- 1 名前:nobodyさん [2009/09/13(日) 20:49:34 ID:kz4rC4Dx]
- ■前 Ruby on Rails Part7
pc11.2ch.net/test/read.cgi/php/1241100447/ ■参考サイト <英語> 本家:www.rubyonrails.org API document:api.rubyonrails.com/ 開発者のblog:weblog.rubyonrails.org/ 参考wiki:wiki.rubyonrails.org/rails <日本語> Rails' wiki: wiki.fdiary.net/rails/ ■参考スレ(プログラム板) Rubyについて Part 37 pc12.2ch.net/test/read.cgi/tech/1251029267/ Ruby 初心者スレッド Part 30 pc12.2ch.net/test/read.cgi/tech/1249687283/
- 953 名前:nobodyさん mailto:sage [2010/02/15(月) 20:16:06 ID:???]
- 自演キモ過ぎ
- 954 名前:nobodyさん mailto:sage [2010/02/15(月) 20:43:43 ID:???]
- >>951
ありがとうございます。まだβでしたか。 新サービスをRailsで作りたいのに3を待つか2で行っちゃうかでウズウズ…
- 955 名前:nobodyさん mailto:sage [2010/02/15(月) 20:50:13 ID:???]
- βはちょっと見ただけだが、
* モンキーパッチするなど、実装の深いところを触るのは避ける * プラグインは全滅するので使わない というレベルでとりあえず2.3.5で作りはじめておくくらいなら、大丈夫かも。
- 956 名前:nobodyさん mailto:sage [2010/02/15(月) 21:03:13 ID:???]
- 実運用するなら2.3.xがいいんじゃないだろうか
たぶんそれなりに開発できるようになるには半年くらいかかるように思う リリースが大幅に遅れたプロジェクトは要注意。勉強なら平行してやればいいし
- 957 名前:nobodyさん mailto:sage [2010/02/16(火) 00:18:29 ID:???]
- Windows上でRuby1.9とした場合
サーバーはどれがいい(動く)の? Mongrel? LightTPD? thin?
- 958 名前:954 mailto:sage [2010/02/16(火) 00:47:56 ID:???]
- >>955
>>956 ありがとうございます。参考になりました。 とりあえず2.3.5で行くことにします。
- 959 名前:nobodyさん mailto:sage [2010/02/16(火) 04:43:08 ID:???]
- なんとかpid
ってファイルを手動で消さないと起動しないことあるんだけど installの仕方間違えたのかな
- 960 名前:nobodyさん mailto:sage [2010/02/16(火) 14:33:15 ID:???]
- 検索、一覧っていう
簡単な流れの画面作ってんだけど 検索画面の入力チェックってcontrollerにもりもり書いていいの?
- 961 名前:nobodyさん [2010/02/16(火) 15:12:55 ID:vr/Y6Irj]
- modelへ
- 962 名前:nobodyさん mailto:sage [2010/02/16(火) 19:26:00 ID:???]
- >>960
検索ワードのことなら、俺ならコントローラに書く。 検索ワードの入力チェック的なこと、そんなにいらなさそう。 検索式の中に入れるならエスケープは必要だけど。
- 963 名前:nobodyさん mailto:sage [2010/02/16(火) 19:39:38 ID:???]
- エスケープはモデルでやるべきだろ
- 964 名前:960 mailto:sage [2010/02/16(火) 20:02:05 ID:???]
- >>962
検索ワードです。 >>963 プレースホルダ使ってるのでSQLInjectionなら大丈夫です。 ttp://gendosu.ddo.jp/redmine/projects/rails/wiki/モデルとは関係ない検索条件などのパラメータをviewとcontrollerでやりとりする とりあえずここみながらmodelに書いてみた。 controllerの方がもりもりいけるけど、汚い。 modelだと専用class用意すんのがちょっと面倒。 大抵の人はcontrollerなのかな。
- 965 名前:nobodyさん mailto:sage [2010/02/16(火) 20:40:30 ID:???]
- コントローラはあくまでオマケで、 script/console でモデルだけ操作して
アプリすべての処理が簡単に行えるのが理想だと思ってる
- 966 名前:nobodyさん mailto:sage [2010/02/16(火) 21:17:26 ID:???]
- 四階層モデルですねわかります
- 967 名前:nobodyさん mailto:sage [2010/02/16(火) 23:27:40 ID:???]
- (´・ω・`)
- 968 名前:nobodyさん mailto:sage [2010/02/16(火) 23:33:25 ID:???]
- controllerとmodelの間にサービス層が欲しい。
ある程度以上の規模になったら絶対必要だと思うんだけど皆はどうしてるんだろう。 独自に層を挟むのはアリなのかな?
- 969 名前:nobodyさん mailto:sage [2010/02/17(水) 00:16:32 ID:???]
- presenter層について紹介。
kpumuk.info/ruby-on-rails/simplifying-your-ruby-on-rails-code/ これはrailsのブログでも紹介されていたよ。 weblog.rubyonrails.org/2009/10/22/community-highlights
- 970 名前:nobodyさん mailto:sage [2010/02/17(水) 00:17:30 ID:???]
- アリでしょ。
app/modelsの中に勝手にクラス作ればOK
- 971 名前:nobodyさん mailto:sage [2010/02/17(水) 00:31:26 ID:???]
- >>970
sample codeがみたい
- 972 名前:968 mailto:sage [2010/02/17(水) 00:36:13 ID:???]
- >>969
>>970 ありがとうございます。 >>969 こんなプラグインがあるんですね。参考になりました。 ただapp直下に新しいディレクトリ作るのは少し抵抗あります。。 >>970 独自に作る場合はmodels以下に作るべきでしょうか? 個人的には、サービス層はコントローラクラスに依存するからcontrollers以下に作った方がすっきりしそう。 例えばloginコントローラ内でabcモデルとxyzモデルを利用する処理がある場合、サービスクラスを保持するファイル名はlogin_serviseのようにコントローラ名に依存すると思います。 なのでcontrollers以下に入れた方が綺麗かなぁと。ほとんど好き嫌いの問題だけど。
- 973 名前:nobodyさん mailto:sage [2010/02/17(水) 01:07:35 ID:???]
- サービス層はコントローラじゃないんだからcontrollers以下に作るのはおかしいと思うけどね。
サービス層はサービス層用にディレクトリ作って、まとめたらいいんじゃないかな
- 974 名前:nobodyさん mailto:sage [2010/02/17(水) 12:50:45 ID:???]
- ごめん、ちょっとわかんなくなってきた。
Service / Model / Controller の役割を誰か例付きで解説して。
- 975 名前:nobodyさん [2010/02/18(木) 16:38:59 ID:I3xk6O8m]
-
Wikipediaのダウンロードできるデータファイル一覧 www.mwsoft.jp/programming/munou/wikipedia_data_list.html
- 976 名前:nobodyさん mailto:sage [2010/02/18(木) 18:26:01 ID:???]
- >>969
これは、「層」というか、ControllerとViewに介在してシンプルにするパターン(って書いてあるけど)かなあ。 >>968,973,974 質問にもなるけどサービス層として切り出したいものって、 いわゆる「ビジネスロジック」ってやつかな、と思ってるんだけど合ってる? データに属していない処理(複数のモデルが関わっていて、どのモデルにも置きにくい)で、 Webにも依存しないので単独でも起動できるようなものを、 「サービス」としてまとめたいのかなと思った。 (Railsの)ControllerはWeb依存なのでView間の遷移とかデータをViewにパスするとかを専門でやる。 俺のイメージはこんなん。
- 977 名前:973 mailto:sage [2010/02/18(木) 23:36:13 ID:???]
- >>976
自分の言っているサービス層は、そういう意味だと思う。 モデルまたはサービス層はWebに依存しないようにして runnerやconsoleで動作確認しやすいように作ってる。 とりあえず、今はlib/services以下にサービス層を作って置いてる lib/services/sample_service.rbという感じ。 Services::SampleServiceという感じで名前が長くなるのがちょっと面倒だけど。 サービスを作る時の基準ってみんなどうしてるのかな。 自分は複数のモデルが絡むトランザクション処理とかだけサービスにまとめて、 単一のモデルで簡潔する処理は、そのモデル内に書いてる。
- 978 名前:nobodyさん mailto:sage [2010/02/19(金) 02:41:48 ID:???]
- libに置くのは最悪だろ
アプリケーションから取り外して再利用できるコードを置く場所
- 979 名前:977 mailto:sage [2010/02/19(金) 02:48:31 ID:???]
- >>978
自動で読み込まれるところに置きたい モデルとは区別したいので、app/models以外に置きたい この2点で考えると、lib/serviceというディレクトリに置くのが手っ取り早いってだけで 今はそうしてる。 他にいい場所あったら教えて欲しい。 app/services以下に置く事にして、 environment.rbあたりにapp/services/*.rbをrequireする処理を書けばいいかな。
- 980 名前:nobodyさん mailto:sage [2010/02/19(金) 08:35:28 ID:???]
- そのへんのためかどうか知らないけど、Rails3ではRails.root/app/ の下の
ディレクトリが全部load pathに含まれるようになる。
- 981 名前:nobodyさん mailto:sage [2010/02/19(金) 09:10:06 ID:???]
- そういうのはrorは弱いしな。
梅。
- 982 名前:nobodyさん mailto:sage [2010/02/19(金) 11:40:07 ID:???]
- >>979
environment.rb に # Add additional load paths for your own custom dirs # config.load_paths += %W( #{RAILS_ROOT}/extras ) っていう箇所があるからそうすればいいのでは。 config.load_paths += %W( #{RAILS_ROOT}/app/services )
- 983 名前:nobodyさん mailto:sage [2010/02/19(金) 12:05:30 ID:???]
- 埋める前にそろそろ次スレ他てようぜ
- 984 名前:nobodyさん [2010/02/19(金) 16:13:46 ID:WbFNhWFy]
-
【Ruby】Ruby on Rails Part9 pc11.2ch.net/test/read.cgi/php/1266563593/
- 985 名前:nobodyさん mailto:sage [2010/02/19(金) 23:08:27 ID:???]
- それじゃ埋め。
- 986 名前:nobodyさん mailto:sage [2010/02/20(土) 01:47:12 ID:???]
- 埋められまsrん。
|

|