【RoR】Ruby on Rails Part11
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/12/11(土) 10:58:56ID:???【Ruby】Ruby on Rails Part10
http://hibari.2ch.net/test/read.cgi/php/1282991262/
■参考サイト
<英語>
本家:http://rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
http://twitter.com/dhh
http://www.loudthinking.com/
0047nobodyさん
2010/12/21(火) 02:01:07ID:???エンジニア同士なら、システム設計に意見する方が適切ではないかい
0048nobodyさん
2010/12/21(火) 02:25:17ID:???上で例に上げられてるのは他社の用意した広告プラットフォームでしょ
エンジニアの志向する技術とビジネスで求められる現実は乖離するのが間たり前で、それに柔軟に対応するのもエンジニアの務めだと思う
0049nobodyさん
2010/12/21(火) 09:15:01ID:???代替案も示さずに批判だけとかcgi.rbがいつまでも糞なままなのがruby界の陰湿さをよくあらわしていますよね
0050nobodyさん
2010/12/21(火) 09:59:57ID:???それに全く気づかないのは人間性の問題なんだろうな
0051nobodyさん
2010/12/21(火) 10:53:38ID:???偉そうなこと言う割にはちょっと考えられないような糞プログラムを晒してくれてるなw
0052nobodyさん
2010/12/21(火) 11:00:27ID:???0054nobodyさん
2010/12/21(火) 11:44:25ID:???自分で自分を陰湿だと言ってることに気づいてないとは
0055nobodyさん
2010/12/21(火) 15:15:03ID:???0057nobodyさん
2010/12/21(火) 17:46:09ID:???どこに書くんでしょうか?
0058nobodyさん
2010/12/21(火) 18:43:40ID:irxjcebdi18n gem ?
0059nobodyさん
2010/12/22(水) 03:49:13ID:???検索に使われるキーワードのlogを見たことありますか?
東京駅近くの病院
↑みたいに文章で検索する人とか結構多い
とにかくこっちが想定しないような検索語をどんどん送ってくるのが一般ユーザー
0060nobodyさん
2010/12/22(水) 05:09:25ID:???0062nobodyさん
2010/12/22(水) 10:23:56ID:???検索キーワードを見ていると、皆さん様々な悩みを思い思いに検索欄に入力して検索しておられますね
うちの検索欄はお悩み相談室ではないのだが・・・
006357
2010/12/22(水) 16:43:25ID:???.html.erb内に日本語書いて、それが正しく表示されるようにしたり、
フォームからの入力で日本語を入力出来るようにしたいんですが、
どうすればいいのかよく分かりません…
0064nobodyさん
2010/12/22(水) 16:51:25ID:???RubyとRailsのバージョンによって対処法が違うから書かないと
DBの設定が違ってる可能性もあるから使ってるDBも書いた方がいい
0065nobodyさん
2010/12/22(水) 19:04:19ID:???ぱっと思ったのは、MySQLとかの文字コードがlatin1のままだったり、
プログラムではUTF8なのにHTML表示がSJISだったりとか
0066nobodyさん
2010/12/24(金) 14:37:49ID:???原因がありすぎてそれだけだと絞れないな
UTF-8という前提で書くと
・.html.erbをUTF-8の文字コードで保存していない
・UTF-8で保存していると見せかけて、BOM付きやUTF-8ではないUNICODEになっている
・.html.erbの文字コードが指定されていない
・.html.erbの文字コードとhtmlのmeta指定やレスポンスヘッダーcharsetの指定がバラバラになっている
・RubyをUTF-8で動かしていない(対応策はRubyやRailsバージョンによりけり)
どれそれの文字コードが表示できないじゃなくて「日本語」って書いてるのが不安w
006715
2010/12/26(日) 06:47:21ID:P+mR+WO/>>19
レスありがとうございます。お礼遅れてすみません。
自分が色々勘違いしていたところもあったのですが、結局まだ解決していません。
http://eblog.drecom.jp/entry/15
の
http://eblog.drecom.jp/system/data/10/9ccc25cf54.png?1290356437
に「OAuthのverifyが通らない」とありまして、
まさにこの状態だと思うのですが、分からず・・とりあえず後回しにして
他の部分の実装を進めています。
また別のことでご質問させていただきたいのですが、
ApplicationControllerの上の方で
paramsの値をみてif分で条件分岐させて
protect_from_forgeryを使うか使わないか振り分けたいのですが、
if params["v"] == "test"
protect_from_forgery
end
とすると params がundefinedとなってしまいました。
試しに
before_filter :custom_protect_from_forgery
def custom_protect_from_forgery
if params["v"] == "test"
protect_from_forgery
end
とすると、なぜかprotect_from_forgeryの行で undefined method before_filter
となってしまいました。
何か良い方法がありましたら教えていただけますと幸いです。
006815
2010/12/26(日) 07:13:23ID:P+mR+WO/上記の通りoauth周りがまだ解決できてませんが、oauth-pluginのoauth_required
を見て、trueかfalseかで処理を分ける様なイメージです。
こういった処理は可能なのでしょうか。。
0069nobodyさん
2010/12/26(日) 09:17:54ID:???しかもソースを見てレスくれてんのに質問投げっぱなしで放置して、
分からなくなったときだけ再登場。
そんなやつが教えてもらえるわけないだろ。
007015
2010/12/26(日) 13:31:14ID:P+mR+WO/ありがとうございました。
で、25のurlで解決出来そうだと思ったので
解決してからお礼しようと思ってたのですが、結局わからなかったもので..
すみません。
0071nobodyさん
2010/12/26(日) 14:49:33ID:???とりあえず動かすだけなら↓でいけると思うが。
self.class.protect_from_forgery
0072nobodyさん
2010/12/26(日) 18:24:37ID:???0073nobodyさん
2010/12/26(日) 19:45:23ID:j7lQkci8before_filter :verify_authenticity_token, option
とほぼ同義なので、
protect_from_forgery :if => lambda {|controller| カスタム条件 }
みたいなので出来そうな気がする。あるいは
def protect_against_forgery?
カスタム条件 and super
end
でもいいような気がする。
0074nobodyさん
2010/12/26(日) 19:50:26ID:???0075nobodyさん
2010/12/26(日) 20:01:46ID:j7lQkci80077nobodyさん
2010/12/27(月) 00:11:08ID:???0078nobodyさん
2010/12/27(月) 00:50:08ID:???0079nobodyさん
2010/12/27(月) 08:27:00ID:???第3版で十分だと聞いているが。
0080nobodyさん
2010/12/27(月) 09:10:44ID:???前スレで紹介されていたWEB+DEV PRESS VOL 58よかったぞ
全然初心者向けじゃねえし、ほとんど移行ガイドじゃねーかw
第3版とこれを合わせてみるといいと思う
635 名前:nobodyさん[sage] 投稿日:2010/11/07(日) 23:35:34 ID:???
>>625
WEB+DB PRESS 58のRails 3特集がいいぞ
Rails 2からの移行者以外誰得な記事だと思ったが
WEB+DB PRESS Vol.58: 編, WEB+DB PRESS編集部: 本
http://www.amazon.co.jp/dp/4774143243/
WEB+DB PRESS vol.58 の Rails 3 / Ruby1.9.2 記事が素晴らしすぎる件 - まちゅダイアリー(2010-08-21)
http://www.machu.jp/diary/20100821.html#p01
0081nobodyさん
2010/12/27(月) 11:18:59ID:???008279
2010/12/27(月) 11:45:02ID:???0083nobodyさん
2010/12/27(月) 17:48:17ID:jyXQOLKOhttp://railstutorial.org/chapters/beginning
でいいと思う
無料だし、丁寧だし、必要なら製本・PDF・解説ビデオ買えるし
0084nobodyさん
2010/12/27(月) 19:59:32ID:???実際にアプリ作ろうとしたらその内容じゃきついよ。
アプリのモデルも二つしかないし、完全な入門用だと思う。
0085nobodyさん
2010/12/27(月) 20:22:54ID:???0086nobodyさん
2010/12/28(火) 00:24:51ID:???@entries = Entry.find(...)
このようにfind系メソッドで取得した@entriesをviewで処理する時に、Entryモデルのインスタンス変数以外の情報で出力を分けたい場合があります。
これを実現するためにコントローラ側で@entriesをループで回して各要素に情報を加えたいのですが、上手いやり方がわかりません。
理想的には以下のようにして、new_varという値を付加したいのですが、これは勿論エラーになります。
【コントローラ側】
@entries.each do |entry|
entries.new_var = ごにょごにょ
end
【ビュー側】
<% entries.each do |entry| %>
<% if entry.new_var == 1 %>ごにょごにょ<% else %>ごにょごにょ<% end %>
<% end %>
仕方なく、自分なりに考えた末、こんな感じになりましたが、冗長な気がします。
【コントローラ側】
@entries.map! do |entry|
{:org => entry, :new_var => ごにょごにょ}
end
【ビュー側】
<% entries.each do |entry| %>
<% if entry[:new_var] == 1 %>ごにょごにょ<% else %>ごにょごにょ<% end %>
<% end %>
実行時にインスタンス変数を追加すれば前者でいけるのかもしれませんが、これはやはりやり過ぎでしょうか?
もっとスマートな方法があったら教えてください。
0087nobodyさん
2010/12/28(火) 00:52:09ID:???試してないけど、モデルEntryにアクセサnew_varを定義してやれば通るんじゃないの?
前者のコントローラ側コードは、
entry.new_var = ごにょごにょ
の間違いってオチ?
0088nobodyさん
2010/12/28(火) 00:55:40ID:???rvmやgitとgithubの使い方、TDDしながらの開発、herokuへのデプロイ
初心者向けの教材としていいんじゃないかと思うが、逆にすぐにやりたいことがある初心者には余計なことが多いなw
008986
2010/12/28(火) 01:36:16ID:???ありがとうございます。
前者のコードはご指摘通りentry.new_varの間違いでした。
モデルにアクセサを定義してみたら動きました。ありがとうございます。
ただ、追加する情報というのがviewによって違うため、そのたびにアクセサを定義するというのが少し現実的では無いのです。
0090nobodyさん
2010/12/28(火) 07:38:41ID:qNgO67wuこれで勝つる。
009186
2010/12/28(火) 10:30:29ID:???ありがとうございます!出来ました。
ActiveRecord::Base.instance_methods(false).grep(/\[\]/)
=> ["[]=", "[]"]
これは今回のケースのような為の便宜メソッドなのでしょうか?
あるいは他に目的があるのかな。
0092nobodyさん
2010/12/28(火) 10:41:16ID:???もともとはテーブルのデータを呼び出すのに使う
だから列名と被ると上書きされるので注意
0093nobodyさん
2010/12/28(火) 10:54:35ID:???そうみたい。
0094nobodyさん
2010/12/28(火) 12:48:06ID:???少し
009586
2010/12/28(火) 12:48:49ID:???皆様ありがとうございました。
009669
2010/12/28(火) 13:59:50ID:sIDdR5MLレスありがとうございます。
protect_from_forgery :if => lambda {|controller| カスタム条件 }
結局これでうまく行きました。ありがとうございます。
クラス○○とインスタンス○○の違いはある程度は分かっていると思うのですが、
ActionControllerに用意されている色々なメソッドがどのタイプのメソッドなのか、把握は出来ていませんでした・・
ともあれ、ありがとうございました。
OAuthの方の問題が解決しないのは変わらず悩んでます・・
もし分かる方いらっしゃいましたらご教示いただけると幸いです。
質問ばかりですみません。
0097nobodyさん
2010/12/29(水) 16:12:12ID:j8vwwBYJmod_cache でも使うの??
0098nobodyさん
2010/12/30(木) 22:08:23ID:???キャッシュされててコントローラも通らないんだからパラメタ使いようがないよね。
動的にしたい部分があればAjaxで後から追加。
0099nobodyさん
2010/12/30(木) 23:59:25ID:???mod_cache使っとけ
0100nobodyさん
2010/12/31(金) 03:04:32ID:???010197
2010/12/31(金) 09:37:44ID:???posts/1/page #index 1ページ目
posts/1/show #id=1に対するshow
0102nobodyさん
2010/12/31(金) 12:06:04ID:???activerecordとどういうところが主に違うんでしょう。
まだ全然触ってないのですが概要だけでもざ〜っと分かったらいいなぁと・・
0104nobodyさん
2011/01/01(土) 21:14:41ID:???ARは基本RDB用のみ、DMはもっと抽象化されててBigTableやNoSQLもアダプタがあればいける
あとDMはモデルでスキーマ定義必須だから、そこ見ればどんなDBかすぐわかる
ARはそこらへんわかりづらい
ARは3.0でどこまでかわってるかはよく知らない
0105nobodyさん
2011/01/01(土) 21:32:08ID:???新年早々乙
ちょっと上の方でRails3の本の話題になっていたけれども
はじめてのRuby on Rails3(I・O BOOKS)
という本はどうなんでしょう?
去年の11月出版みたい
0106nobodyさん
2011/01/01(土) 22:10:05ID:???0107102
2011/01/02(日) 03:46:53ID:???なるほど、ありがとうございます。
これからActiveRecordに変わってDataMapperが台頭していく流れなんですかねぇ。
NoSQLDB自体使いどころを選ぶみたいですが、RDBも使えるのなら両方使えてツブシが利く方がよさげですが・・
0108nobodyさん
2011/01/02(日) 04:15:28ID:???0110nobodyさん
2011/01/02(日) 16:13:37ID:???正直、どれも良くできてるんで何使っても変わんない気がするんだけど
0111nobodyさん
2011/01/02(日) 16:34:18ID:???0112nobodyさん
2011/01/02(日) 23:48:10ID:???0113nobodyさん
2011/01/03(月) 17:16:11ID:???半分以上がfind_by_sqlになったぞ
ルーティングを無闇に定義して逆にごちゃごちゃしてくるし
規約でどうこうやるのも限界を感じるわ
0114nobodyさん
2011/01/03(月) 21:40:36ID:???テーブル設計とARの使い方が間違ってる部分が多いんじゃないかと
とはいえ、find_by_sqlが必要になる場面ってちらほらあるんだよな..
0115nobodyさん
2011/01/03(月) 23:26:51ID:???でもまぁそういう、SQL考えるだけで数時間かかるようなのはSQLにまかせて
定型的なモンだけARでやって楽しようぜ!ってのがARの思想だと思う
0116nobodyさん
2011/01/04(火) 00:53:01ID:???0117nobodyさん
2011/01/04(火) 08:47:58ID:???0118nobodyさん
2011/01/04(火) 10:54:58ID:???0119nobodyさん
2011/01/04(火) 13:24:48ID:???0120nobodyさん
2011/01/04(火) 14:03:16ID:???それがなぜSQLを直接書く人と結びつくのかも不明
0121nobodyさん
2011/01/04(火) 14:06:54ID:???0122nobodyさん
2011/01/04(火) 14:47:07ID:???where句とかのレベルのSQLは書かざるを得ない事が多い気がする。
自分の場合は、それも嫌だったからARを拡張して、全く書かずに済むようにしてるけど、
まだそれ程複雑な物作ってないから、書かずに済んでるのかな。
0123nobodyさん
2011/01/04(火) 14:56:38ID:???PGやめろとか、素質無しとか言われたことがある
もちろんスルーしてやったぜ
0124nobodyさん
2011/01/04(火) 15:23:51ID:???0125nobodyさん
2011/01/04(火) 21:49:18ID:???自分の経験上、SNSサイトですら少し規模が大きくなると細分化されたデータをたくさん所持するようになって
関連の無いテーブルから一度にデータを取ってくることが日常茶飯事になる。
これはテーブルの設計どうこうで済む問題じゃない。
関連テーブルを辿れるレベルではどうにでもなるが。
0126nobodyさん
2011/01/04(火) 22:17:44ID:???○ 別のDBサーバから
0127nobodyさん
2011/01/04(火) 22:57:36ID:???データが相当あったって業務系なんかの場合は、
テーブルをスライスしてDBを分散させる必要なんてほとんどない。
一つ一つの負荷は大したことなくても、アクセス数がハンパないってのは非常につらい。
0128nobodyさん
2011/01/05(水) 00:31:53ID:???長年に渡って蓄積されたバッドノウハウの塊のようなやつとか
0129nobodyさん
2011/01/05(水) 01:22:06ID:???”アプリケーションによる”だけじゃないか
0130nobodyさん
2011/01/05(水) 05:13:54ID:???その辺りを考慮しないでSQL直書きしてるのを見かけたら脊髄反射的に批判するのは究極の短絡的思考だと思います
0131122
2011/01/05(水) 06:58:47ID:???もちろん、関連テーブルを辿れるレベルの話です。
素のARでは、それでも直書きせざるを得ない事があるので、
それを回避するために拡張したというだけです。
0132nobodyさん
2011/01/05(水) 07:45:31ID:???普通にAR使ってるんだよね?
高負荷サイトで普通に使えるなら問題ない。
0133nobodyさん
2011/01/05(水) 09:40:59ID:???0134nobodyさん
2011/01/05(水) 22:35:48ID:???大変な部類じゃないのか?
0135nobodyさん
2011/01/06(木) 01:32:08ID:???数十行のSQLを書くことも稀だろう。
0136nobodyさん
2011/01/08(土) 03:24:26ID:Oy6jKTHPhttps://github.com/norman/disqus
http://disqus.rubyforge.org/
http://michitoshi.blogspot.com/2010/11/disqus.html
DISQUS CommentsのTwitterコメント投稿・表示欄を掲載する手順 Kawanet Tech Blog/ウェブリブログ
http://kawa.at.webry.info/201008/article_8.html
0137nobodyさん
2011/01/08(土) 06:13:10ID:???おばあちゃん
ありがとう
おばあちゃん
ほんまに
ありがとう
0138nobodyさん
2011/01/08(土) 22:38:35ID:???仲間はずれにされました;;
0139nobodyさん
2011/01/08(土) 22:45:47ID:???別にRails > CakePHPとか思ってるわけじゃなくて、純粋にCakePHPを使うメリットが知りたい
0140nobodyさん
2011/01/09(日) 00:36:37ID:???聞くまでもない
0141nobodyさん
2011/01/09(日) 02:10:48ID:???0142nobodyさん
2011/01/09(日) 03:25:14ID:???0143nobodyさん
2011/01/09(日) 05:26:39ID:oSWZOkDKhttp://itpro.nikkeibp.co.jp/article/OPINION/20071031/286028/
開発に取りかかって約2カ月で完成した。
「VBscriptならこの倍,PHPでも1.5倍はかかっていたのではないか」(宮島氏)。
コード量も10分の1になった。
VBsciptではコードを再利用する際にコピーしていたのに対し,
Rubyではクラス継承により集約でき,変更の際の見通しもよくなった。
0144nobodyさん
2011/01/09(日) 05:34:12ID:oSWZOkDKインタビュー:[楽天]Ruby活用事例とROMA,Fairy
http://gihyo.jp/dev/column/01/prog/2010/030801
今では日に200万とか,多いものだと600万くらいのトランザクションが発生するシステムで使っていますが,
すべて問題なく稼動しています。
インタビュー:[楽天]Ruby活用事例とROMA,Fairy
http://gihyo.jp/dev/column/01/prog/2010/030801?page=2
パフォーマンスも当然ベンチマークで要件をクリアできていることを確認していましたし,
実稼動後も特に問題になったことはないです。
興味深い点としては,RailsとCakePHPを比べたところ,高負荷時にはRails のほうが大幅に応答性能が高いという結果が出たことですね。
これは200リクエスト/秒くらいからPHPの応答性能が急激に下がるのが原因です。
Rubyはそれほど大きくはパフォーマンスが落ちないんです。
0145nobodyさん
2011/01/09(日) 08:56:50ID:???■ このスレッドは過去ログ倉庫に格納されています