【RoR】Ruby on Rails Part15
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2012/07/07(土) 00:50:39.45ID:???http://kohada.2ch.net/test/read.cgi/php/1329492840/
■参考サイト
<英語>
本家:http://rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
http://ruby-toolbox.com/
http://rubygems.org/
http://agilewebdevelopment.com/plugins/top_rated
<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
【ヘロク】 Heroku Part1 【PostgreSQL】
http://toro.2ch.net/test/read.cgi/hosting/1329378677/
0519nobodyさん
2012/10/28(日) 11:05:16.70ID:???たとえば、ソーシャルアプリでユーザのアイテムを管理するテーブルを例にあげてみようか。
たぶん知ってるかも知れないけど、MySQLの場合は
SELECT * FORM hoge WHERE user_id = ?
ORDER BY item_id
というクエリを使うときに
user_idとitem_idで複合主キーになっている場合が一番高速に実行できる。
(MySQLの主キーはインデックスオンリースキャンが可能だから
設計の美しさの話ではなく、あくまでも実行スピードを重視した場合の話。
必須ということではなく、MySQLなら
なるべくそうなってるとイイよねっていう話。
0520nobodyさん
2012/10/28(日) 11:35:18.64ID:???普通に add_index で張れるだろ
0521nobodyさん
2012/10/28(日) 14:54:13.77ID:???なるほど
アソシエーションうんぬんで複合主キーがあったら便利ってわけじゃなく
索引付けて検索スピードを早くするのが目的なのね。
ありがとう
0522nobodyさん
2012/10/29(月) 07:40:49.33ID:???テーブルにcodeっていう文字列のカラムがあって、
そこをレコードごとに入力の際のバリデーションのパターンを変えたいです。
そのパターンはフォーム上でユーザーが指定して作れるような形にしたいのですが
どういった作り方が望ましいでしょうか?
バリデーションパターン例
1. abcdefghij (アルファベット小文字のみ。10字まで)
2. AbCdEfGhI(アルファベット大文字小文字混合。9字まで)
3. 9876554210(数字のみ。9字まで)
4. A1b2C3d(アルファベット大文字小文字数字混合。7字まで)
5. 123-456-789(数字9桁。3桁ごとに-で区切られる)
などパターンはユーザーがレコード作成時に指定する形で
ありとあらゆるパターンが想定されます。
上記はあくまで一例です
0523nobodyさん
2012/10/29(月) 09:38:11.51ID:???0525nobodyさん
2012/10/29(月) 13:26:55.78ID:???validate :code_check
attacessor :hoge
def code_check
if self.hoge == "typeA"
unless self.code =~ /[A-Z]+/
errors.add(:code, "がパターンと一致しません")
end
elsif self.hoge == "typeB"
........
end
end
泥臭いけどこんな感じでやる以外ないかな
0526nobodyさん
2012/10/29(月) 16:33:30.95ID:???test_idをデータベースに格納する時に、1から始まるユニークなIDにしたいのですが、
うまくできません。本当にわからないので皆様の知恵をお貸しください。
https://github.com/217/ankikun/commit/9430c1a4b3953371ea0fcf5b9b3710053f9dbcdb
0527nobodyさん
2012/10/29(月) 19:19:43.17ID:???データの更新履歴を保存するの、何のプラグイン使ってますか?
paper_trailを入れてみたものの、has_manyの扱いがちゃんと実装されてないらしく
困っています…。
0528nobodyさん
2012/10/29(月) 20:43:43.67ID:???ということはユーザーが正規表現を使うように
任意で無限のパターンを作り出すようなことはできないのねorz
ありがとう
0530nobodyさん
2012/10/29(月) 22:29:28.34ID:???正規表現をDBにつっこんでevalすりゃできるかもしれんが、evalを使うのはセキュリティ的にも
よろしくありませんわな
0533nobodyさん
2012/10/29(月) 23:08:24.61ID:???>>531
自分のデータベース・Railsに対する理解が欠けていたので、一対多だと理解出来なかったのが原因でした。
感謝しています。ありがとうございました。
0534nobodyさん
2012/10/29(月) 23:36:19.00ID:???0535nobodyさん
2012/10/30(火) 00:13:06.94ID:???でも無くなるんじゃなかったっけ
0536nobodyさん
2012/10/30(火) 00:19:33.34ID:???0537nobodyさん
2012/10/30(火) 08:49:47.90ID:???Riding Rails: Rails 3.2.9.rc1 has been released!
http://weblog.rubyonrails.org/2012/10/29/ann-rails-3-2-9-rc1-has-been-released/
0538nobodyさん
2012/10/31(水) 00:13:46.73ID:jWweZIhx互いにhas_many throughが標準的だな。
0539nobodyさん
2012/10/31(水) 00:30:19.20ID:???has_many :taggings
has_many :tags, :through => :taggings
こういうテーブルでbookにタグを付けられるようにしたのですが
ひとつのbookに付けられるタグの数を5つまでに制限したいです。
どのクラスにどのようにvalidatesを書けば良いんでしょうか?
0540nobodyさん
2012/10/31(水) 00:40:06.46ID:???0541nobodyさん
2012/10/31(水) 00:41:28.56ID:???taggableにそういうの無かったっけ?
0542nobodyさん
2012/10/31(水) 01:35:44.00ID:???validates :taggings, length: { maximum: 5 }
ダックタイピングの威力が存分に活かせる例だな
0543nobodyさん
2012/10/31(水) 01:38:51.02ID:???http://japan.zdnet.com/datacenter/case-study/35023491/
“ドラゴンクエストXの舞台裏”サーバ・データベース開発のプロが語る、数十万人がいっしょに遊べるゲームができるまで【CEDEC 2012】 - ファミ通.com
http://www.famitsu.com/news/201208/22020020.html
0544nobodyさん
2012/10/31(水) 02:08:12.12ID:???ありがとうございます。
lengthは文字列だけだと思ってました。
taggableも調べてみます。
0545nobodyさん
2012/10/31(水) 21:02:31.53ID:???0546nobodyさん
2012/10/31(水) 22:34:43.96ID:???0547nobodyさん
2012/11/01(木) 21:10:56.24ID:???0548nobodyさん
2012/11/01(木) 23:03:42.07ID:???その定義もなしにできるできないなんて分かるわけないだろ
0549nobodyさん
2012/11/02(金) 00:36:11.11ID:???0550nobodyさん
2012/11/02(金) 02:47:42.25ID:???確かにそうですね。すいません
Pixivのようなユーザーが写真を投稿できるサイトでタグ機能をacts_as_taggable_onを使って実現しています
photo
->user_id
user
->id
タグは、他のユーザーからも編集可能にしています。
しかし、その写真のオーナーが消されたくないタグを設定している場合もあるのでオーナーが設定したタグの中でなんらかの方法で選択したタグのみ削除不可能にしたいと思います
この実現は可能でしょうか?
0551nobodyさん
2012/11/02(金) 03:07:46.45ID:???可能でしょうか?の前に、自分でやったこと書かないと
これこれこういう風にやったけどできませんでした
みたいに
0552nobodyさん
2012/11/02(金) 04:38:42.49ID:iQCIFpEx0553nobodyさん
2012/11/02(金) 09:50:31.64ID:???0554nobodyさん
2012/11/02(金) 10:42:02.77ID:???書いてないじゃん
0555nobodyさん
2012/11/02(金) 11:18:16.25ID:iQCIFpExhttp://www.sakura.ad.jp/news/sakurainfo/newsentry.php?id=687
0556nobodyさん
2012/11/02(金) 14:02:08.61ID:???http://aws.amazon.com/releasenotes/3475360443946864
0557nobodyさん
2012/11/02(金) 14:06:03.14ID:iQCIFpExhttp://docs.amazonwebservices.com/elasticbeanstalk/latest/dg/create_deploy_Ruby_rails.html
Deploying AWS Elastic Beanstalk Applications in Ruby Using Eb and Git - AWS Elastic Beanstalk
http://docs.amazonwebservices.com/elasticbeanstalk/latest/dg/create_deploy_Ruby.html
0558nobodyさん
2012/11/02(金) 14:15:47.04ID:iQCIFpExhttp://aws.typepad.com/aws/2012/11/aws-elastic-beanstalk-ruby-support-and-vpc-integration.html
0559nobodyさん
2012/11/02(金) 15:37:16.96ID:iQCIFpExhttp://aws.typepad.com/aws_japan/2012/11/aws-elastic-beanstalk-ruby-support-and-vpc-integration.html
http://docs.amazonwebservices.com/elasticbeanstalk/latest/dg/customize-containers.html
http://docs.amazonwebservices.com/elasticbeanstalk/latest/dg/create_deploy_Ruby_custom_container.html#create_deploy_Ruby_custom_container-envprop
0560nobodyさん
2012/11/04(日) 11:24:51.99ID:???mogokってrailsだけ?sinatraとかpadrino無理なんかな。
0561nobodyさん
2012/11/05(月) 23:28:21.67ID:???5000行以内
ごく一般的な記述
という制限で、それなりなWebアプリって作れると思いますか?
どういうアプリかは置いておきまして。
漠然としていて申し訳ない。
0565nobodyさん
2012/11/06(火) 14:11:24.48ID:XaGhKZz4そしてプログラムの中に要素数1000からなる配列を初期化するルーチンが必要だったとする。
1万10円
40円
10円
http://blog.livedoor.jp/dankogai/archives/50766218.html
0566nobodyさん
2012/11/08(木) 17:10:59.33ID:JIoZcSH9http://www.rubyworld-conf.org/ja/live/
0567nobodyさん
2012/11/08(木) 23:27:30.39ID:???user <-> user_and_user <-> user
このように友人関係を作ったとします
その友人関係(間のリレーション)を削除したい場合はどうすればいいですか?
追加は
user.user_and_user << tarou
で出来るんですが、逆に外すのはどうすればいいですか?
user.user_and_user.where(:id=>tarou.id).destroy
とするしかありませんか?
0568nobodyさん
2012/11/08(木) 23:50:40.67ID:???0569nobodyさん
2012/11/09(金) 02:53:38.20ID:uWhs7eHW0570nobodyさん
2012/11/09(金) 08:29:12.27ID:ljQorQ20http://d.hatena.ne.jp/hichiriki/20100622#1277195810
0571あ
2012/11/10(土) 08:38:26.35ID:7ECMacrfhttp://www.ruby-lang.org/ja/news/2012/11/09/ruby19-hashdos-cve-2012-5371
0572nobodyさん
2012/11/11(日) 18:12:02.25ID:???例えばuploadコントローラーのアクションではupload.jsを使いたいみたいなときに、assets/javascript/に入れてしまうと常に呼び出されてしまうからそこに置けないし
0573nobodyさん
2012/11/11(日) 19:51:19.75ID:QM75yKBE0574nobodyさん
2012/11/12(月) 16:58:08.37ID:???rspecでテストするにはどうすれば良いのでしょうか。
User.should_receive(:active)では駄目でした。
0575nobodyさん
2012/11/12(月) 20:01:42.66ID:???ActionView::Template::Error (incompatible character encodings: UTF-8 and ASCII-8BIT):
が表示されます
対処法などはありますか?
0577nobodyさん
2012/11/12(月) 20:25:50.21ID:jRANh58G0578nobodyさん
2012/11/12(月) 21:46:03.81ID:TP7cnTaVセレクタで区別する。
必要ならbodyにid付けたり。
0579nobodyさん
2012/11/12(月) 22:53:28.41ID:???ブラウザのキャッシュを効かせようというものなので、コントローラによって読み込むファイルを
分けるという発想と相容れるものではない
0580a
2012/11/13(火) 01:48:59.08ID:3XNuJC/Bhttp://weblog.rubyonrails.org/2012/11/12/ann-rails-3-2-9-has-been-released/
0581nobodyさん
2012/11/14(水) 11:41:37.95ID:???0582nobodyさん
2012/11/21(水) 12:06:15.42ID:bGZkbmii0583nobodyさん
2012/11/21(水) 15:10:26.90ID:???簡単に指定する方法はありませんか?
instance_methods(false).each{ |action| caches_page action }
としたら一番下に書かないと駄目みたいでそれは避けたいです。
0584nobodyさん
2012/11/21(水) 23:28:20.97ID:zJbRMsxp是非は別として、method_added フックでやったらどうか。
0585nobodyさん
2012/11/22(木) 20:19:57.01ID:???検索とかのURLとかどうすればいいか悩む
0586nobodyさん
2012/11/22(木) 21:31:58.25ID:8YsF3rYJつまりcollectionのGET
0587nobodyさん
2012/11/23(金) 05:12:54.54ID:???そこからDLさせるのってどうすればいいですか?
画像ファイルを保存する時に別のサーバーに保存してます
それをクリックでDL出来るようにしたいんだけど
send_fileだとローカルのファイルしかDLさせられない
でも、いちいち別サーバーからアプリケーションサーバーにDLしてから送信なんてのは非効率的すぎる
何かいい方法ありません?
0588nobodyさん
2012/11/23(金) 10:51:09.36ID:???0589nobodyさん
2012/11/23(金) 11:07:23.15ID:bRXvxwC+0591nobodyさん
2012/11/23(金) 19:03:06.62ID:???それじゃあ普通のブラウザ内展開になっちゃいます
>>589
Nginxなのでヘッダーの付加なんかはできます
0592nobodyさん
2012/11/23(金) 20:02:15.34ID:???0593nobodyさん
2012/11/23(金) 21:49:46.01ID:bRXvxwC+Amazon S3とかじゃなく、自分で制御の効くサーバなら、
ダウンロードさせたい画像のリクエストに Content-Disposition ヘッダを
付けたらどうか。
0594nobodyさん
2012/11/25(日) 04:28:42.51ID:???モデルの作り方がよくわからず。。。
よろしくお願いします
0595nobodyさん
2012/11/25(日) 07:20:42.47ID:s8Eu0FpFhttp://www.geocities.jp/stardust774/
0596nobodyさん
2012/11/25(日) 11:22:08.51ID:???まずは、モンゴたんとマイ・エスキュエルたんを自宅に迎えます。
その後、モデルへ育成させます。
< 恋愛育成ゲーム RoR 攻略法サイトより
0598nobodyさん
2012/11/27(火) 22:35:34.09ID:???どっちのが簡単ですか?
0599nobodyさん
2012/11/27(火) 22:54:35.85ID:???普通は両方覚える
0600nobodyさん
2012/11/27(火) 23:00:41.83ID:???Wordpress,drupal,Mediawiki,xoops, open pneとかテーマとプラグインで楽できる
でも、コードを書くと汚くなりがち
いくつもたくさん開発して資産を蓄えていきたいとか、こまめに改修していきたいならRubyのほうが楽というか楽しい?というべきか
0601nobodyさん
2012/11/28(水) 08:00:32.83ID:IhJ0H87A一日経つと「Rubyが本当に好き」になり、一週間経つと「PHPには戻れない」状況になりました。
http://capsctrl.que.jp/kdmsnr/wiki/transl/?AnInterviewWithDHH
DHH:極端なことを言うと,Rubyが一番美しく自分のコードが書けるからです。
DHH:PHPとJavaです。でも,どんなにリファクタしても綺麗なコードが書けなかった。
http://gihyo.jp/dev/serial/01/alpha-geek/0004
404 Blog Not Found:そろそろPHPに関して一言いっとくか
http://b.hatena.ne.jp/entry/blog.livedoor.jp/dankogai/archives/50835571.html
http://b.hatena.ne.jp/entry/blog.livedoor.jp/dankogai/archives/50993137.html
0602nobodyさん
2012/11/28(水) 08:07:06.13ID:IhJ0H87ADHH氏は車にも精通しているのか,部品はパガーニ社が扱う最良のものを自らチョイスしたそうです。
もちろんオーダーメイドであるため現在のところ世界に1台しかありません。
ほぼ同スペックの「トリコローリ」というモデルが130万ユーロ(約1億4000万円)と言われている
http://gihyo.jp/dev/clip/01/orangenews/vol59/0008
0604nobodyさん
2012/11/28(水) 08:14:45.17ID:IhJ0H87A食べログの画面数は約200あるが,開発に取りかかって約2カ月で完成した。
「VBscriptならこの倍,PHPでも1.5倍はかかっていたのではないか」
コード量も10分の1になった。
http://itpro.nikkeibp.co.jp/article/OPINION/20071031/286028/
0605nobodyさん
2012/11/28(水) 08:16:03.89ID:???0606nobodyさん
2012/11/28(水) 08:16:26.21ID:IhJ0H87Ahttp://gihyo.jp/dev/column/01/prog/2010/030801?page=2
RailsとCakePHPを比べたところ,高負荷時にはRails のほうが大幅に応答性能が高いという結果が出たことですね。
これは200リクエスト/秒くらいからPHPの応答性能が急激に下がるのが原因です。
Rubyはそれほど大きくはパフォーマンスが落ちないんです。
0607nobodyさん
2012/11/28(水) 08:17:49.41ID:???0608nobodyさん
2012/11/28(水) 08:18:18.36ID:IhJ0H87Ahttp://thinkit.co.jp/article/156/4?page=0,1
3ヶ月、わずか3名程度のエンジニアチームで、彼らはPHPで実装が完了していたレベルに追いつきました。
またコード量はPHPの1/5以下にまで削減されており、よりシンプルな構成も実現できました。
0609nobodyさん
2012/11/28(水) 08:24:48.32ID:IhJ0H87A配列に格納した名前の中から,3文字以下のものを選んで出力するプログラムである。
http://itpro.nikkeibp.co.jp/article/COLUMN/20060315/232514/?SS=imgview&FD=-1264950070&ST=ittrend
リスト6 Rubyのサンプル・プログラム
http://itpro.nikkeibp.co.jp/article/COLUMN/20060315/232514/?SS=imgview&FD=-1264026549&ST=ittrend
http://itpro.nikkeibp.co.jp/article/COLUMN/20060315/232514/
0610nobodyさん
2012/11/28(水) 08:27:30.47ID:IhJ0H87Aそしてプログラムの中に要素数1000からなる配列を初期化するルーチンが必要だったとする。
1万10円
40円
10円
http://blog.livedoor.jp/dankogai/archives/50766218.html
0611nobodyさん
2012/11/28(水) 08:44:19.45ID:???独自フレームワークはやめよう
http://b.hatena.ne.jp/entry/blog.madoro.org/mn/84
0612nobodyさん
2012/11/28(水) 08:45:53.48ID:???0613nobodyさん
2012/11/28(水) 08:48:22.01ID:???0614nobodyさん
2012/11/28(水) 09:45:24.02ID:???アプリA
アプリB
アプリC それぞれでbundle exec unicorn_rails
するとどれかを止めたり再起動したい時にpgrep -f 'unicorn_rails mater'ってやると3つでちゃってどれがどれかわからないです……
0615nobodyさん
2012/11/28(水) 09:47:18.90ID:???それであれば色々解決するのですが……
0617nobodyさん
2012/11/28(水) 12:08:24.14ID:???0618nobodyさん
2012/11/29(木) 10:28:45.57ID:???■ このスレッドは過去ログ倉庫に格納されています