【Ruby】Ruby on Rails Part8at PHP
【Ruby】Ruby on Rails Part8 - 暇つぶし2ch892:nobodyさん
10/02/07 08:55:11
>>843-845
確かに鯖管理が面倒というのはあるね。

フレームワークとは違うけどwordpressとかphpbbの作者はスクリプトの普及のため
その辺はものすごく意識しているみたい。
要するにレン鯖で動くようにすることに執念を燃やしている。

WordPressに見るオープンソースWebアプリに向いた設計とは - p0t
URLリンク(docs.komagata.org)


phpはmod_php動作はともかく、一旦普及してデフォで採用されているのがデカイんだろうなー
mod_php相当のpassengerはいいんだけど、いまいち普及してないよね・・・。
海外だとDreamhostあたりは入ってたと記憶

>>846のherokuみたいにデプロイ簡単で、managedなサーバーはよいね。もう少し安ければいいけどw


ただ、無粋なので言うのやめようかとおもったけど、
動かそうと思えば、xreaとかcoreserverでCGI駆動でも動かせるよ?
どうせサービス作っても流行るかどうかはわからんのだから、人少ないうちはCGI駆動でも問題ないよ!

893:nobodyさん
10/02/07 10:05:09 lH6tE8FW
URLリンク(www.google.com)

894:nobodyさん
10/02/07 15:47:44
cgiとかみんな重くて不幸に成るから辞めてくれw
さくらのphpみたいにrubyも上位サービス契約しないと使えない様にされるだけだ。


まともに出来ないレベルで仕事に仕様というのは無茶だな。
そんなレベルで金受け取って仕事される客も困るだろうw

895:866
10/02/07 20:54:16 AwzzZZa9
jrubyをrubyに変えたら上手くいきました。

ただ、MySQL5.1も問題ありみたいですね。とりあえず
ここを参考にして、エラーは回避しました。
URLリンク(d.hatena.ne.jp)

SUNでまとめときゃ大丈夫と思ったのが甘かったみたいです。
それともwindowsが合わないのかな。

レスくれた方々には感謝してます。

896:nobodyさん
10/02/07 21:34:57
あんま変わったことしない方がいいよ。悪く言えば寄せ集めなんだから
Google App Engine とかもあったけど、「○○で動いた」みたいな報告は、
ごく一部の機能を動かしただけで、実際の開発には耐えられないんじゃないだろうか。

897:nobodyさん
10/02/08 13:58:49 UWYpis5j

URLリンク(www.flickr.com)

How to use both Rails and Sinatra in the same application: URLリンク(bit.ly) -- love how easy this is!
URLリンク(twitter.com)




898:nobodyさん
10/02/08 14:51:50
jrubyとrorはサン純正でもないと思うが。
サン純正でまとめるならちゃんとjavaで組んだほうがいい。
時代はoracle enterprise linux + oracle weblogic application server + oracle databaseかもしれないが。

899:nobodyさん
10/02/08 19:43:14
rails3って2系とあんま変わらないらしいね。
一部の機能がモジュール化されて取替え可能になるだけか

900:nobodyさん
10/02/08 20:05:25
GWT

901:nobodyさん
10/02/08 22:59:49
jpmobileはRails3に対応してくれるんだろうか

902:nobodyさん
10/02/08 23:23:01
先月に続き、今月またjpmobile会議があるっぽいから請うご期待。


903:nobodyさん
10/02/10 06:22:01 F6Q2dOp+

Ruby on Rails によるシステム開発事例集 - 株式会社オイアクス
URLリンク(www.oiax.co.jp)

904:nobodyさん
10/02/10 13:09:43 L494lCPs

Twilog - Twitterのつぶやきをブログ形式で保存
URLリンク(twilog.org)

ひとりで作るネットサービス:
ただしイケメンに限……らない! ネットならフリーターでも生活できる―ロプロスさん
URLリンク(bizmakoto.jp)
「今振り返ると勉強してよかったです。これから作るWebサービスもRubyで作ります。
やっぱり純粋なオブジェクト指向がすばらしいというか、
PHPで数行かかるところも1行で書けてしまったり、かゆいところに手が届く言語ですね」。
「よく言われることですが」と前置きしつつ
「やっぱりRubyは書いていて楽しい」という。





905:nobodyさん
10/02/11 08:39:51
Rails事例ではないかもしれんが、参考になるな。
しかし、開発環境がRDEの男の人って・・・

906:nobodyさん
10/02/11 11:54:04
sakuraで15000pv/日のサイト動いてるよん


907:nobodyさん
10/02/11 12:56:06 d9Kyh7+c
自社サイトのPVを計算してみたら、119,932pv/日だった(1月分)。
Webサーバ1台、DBサーバ1台。
それぞれ専用サーバで、メモリは4GB。CPUはCore2DuoT8100。サーバ1台あたり月額14,700円
Apache + mongrel + PostgreSQL8.3。
Rubyのバージョンは1.8.7。
稼動年数は4年くらい。


908:nobodyさん
10/02/11 14:17:14
10万pv/月ベースは個人で作っても結構簡単に達成できるなぁ。
日ベース常時1万に乗っけるのが難しい。
自分のサイトはなぜか休日にアクセス数激減してしまう
パフォーマンス意識しなきゃいけないほどのマンモスサイトを早く作りたい

909:907
10/02/11 15:10:07
>>908
上のサイトはPCサイトのみのアクセス数なんだけど、やっぱり土日や祝日はアクセスが減るね。
休日も見てもらえるようなコンテンツを用意しないといけないんだろうけど、今はアイデアがない。
ちなみに、1日で約11万pvだから、月だと11*31=341万pv。
当初は、月10万まで行くのも苦労したんだけど、簡単にいけるもんなのか・・・


910:nobodyさん
10/02/11 16:48:41
スレ違い

911:nobodyさん
10/02/11 16:56:25 XTMQuQu/

ミニブログの Twitterのstats(統計)データ。
URLリンク(kaworu.jpn.org)
- 350,000を超えるユーザ。
- 秒間600リクエスト
- 平均毎秒200-300コネクション。最大時は秒間800コネクション
- MySQLは秒間2,400リクエストを処理する
- 180のRailsインスタンスがある。MongrelのWebサーバを使っている。
- 1つのMySQLサーバ(1つの大きな 8コアのサーバ)と1つのスレーブ。スレーブは、統計とレポートのための読み込み専用(リードオンリー)。
- 雑用処理をするための30+のプロセス
- 8台のSun X4100s
- Railsでのリクエストの処理時間は200 msec
- データベースにかかる時間の平均は、50-100 msec
- 16GBの memcached

912:nobodyさん
10/02/11 17:09:17 XTMQuQu/

RORのままアーキテクチャの変更で10000%高速化したとな。
URLリンク(b.hatena.ne.jp)

913:nobodyさん
10/02/11 18:00:46
DBを中心としたデータアクセス周りは手を抜いて作るとバカみたいに遅くなるからな
ツイッターのエンジニアもそのあたりの失敗を認めてたような
ここまで使われると思ってなかったんだろうけど

914:nobodyさん
10/02/11 19:27:35
>>904 の主は2chねらっぽい
K氏と一緒に稼ぐチンパン団 入団20日目
スレリンク(affiliate板)

スレタイトルのチンパン団はインタビューで小一時間説明したのに華麗にスルーされたとかw

915:nobodyさん
10/02/12 00:23:36
railsでkeyvalue型のDBって使えないの?

916:nobodyさん
10/02/12 06:49:51 GlKVK1JQ
単にActiveRecord使わなければいいだけ
というか今もmemcachedとか普通に使われてないか?


917:nobodyさん
10/02/12 08:49:26
TokyoTyrant、Roma、Kumofsなどなど好きなの使えばという感じだが。

918:nobodyさん
10/02/12 09:32:46
URL helper関数をRails Consoleから確認することはできますか?
StoryモデルとStoriesコントロールがあったとして、

>stories_path
(/stories を期待している)

としても、そんなメソッドはないと言われてしまいます。

919:nobodyさん
10/02/12 10:47:03
UrlHelperというのは別途存在するので確認だけど、
map.resourcesで作られるURLを表すメソッドだよね?

ActionController::Routing::Routes.install_helpers して helper.stories_path かなー
と思ったんだけど、違った。

認識されるURLパターンを見るだけなら rake routes でいいんだけど。


920:nobodyさん
10/02/12 12:44:06
>>919
レスありがとうございます。
はい、map.resourcesで作られる4つの関数です。
結局、protectedメソッドらしく確認できないっぽいです。

921:nobodyさん
10/02/13 00:53:22
paperclipで画像登録する時、ファイル単位じゃなくてフォルダ選択して中身を一括登録ってできる?

922:nobodyさん
10/02/13 01:02:56
ブラウザの<input type="file">に、ディレクトリを指定すると
その中身をごっそり送るような仕組みが出来ない限り無理じゃないか?



923:921
10/02/13 01:09:26
>>922

昔作ったやつでフォルダ一括って出来たんだけど、
確かDBにバイナリで格納してたから重かった気がした。
最近paperclipって知ったからコレは!って思ったんだが…

会社行ったら前どうやって作ったのか確認してみます。

924:nobodyさん
10/02/13 01:39:55
フォルダ一括ってブラウザにそんな機能あったんかw

925:nobodyさん
10/02/13 11:03:58
「一括アップロード jquery」とか「一括アップロード JavaScript」とかぐぐればいろいろ出てくるけど、
フォルダ一括はそもそもブラウザに機能ないから、何か工夫しないといけないはず。

↓フォルダは無理だが複数一括ならこんなのとか
MOONGIFT: ≫ 華麗にアップロード「SWFUpload」:オープンソースを毎日紹介
URLリンク(www.moongift.jp)
って公式サイト死んでるがな・・・

あとはzipで圧縮したのをアップロードして、サーバー側で展開とか。一手間増えるが

926:nobodyさん
10/02/14 00:55:54
なるほど、JavaScriptだと、1個ずつ選択してストックしておくしかないけど、
Flash(ActionScript)を使えば一度に複数選択できるのか。


927:nobodyさん
10/02/14 13:54:20 6lVOAOxG
どなたか教えてください。

link_to_remoteを使って「ほげ」をクリックすることで"hoge"の内容が
書き変わるようにしています。

<%= link_to_remote 'ほげ',
:update => "hoge",
:url => {:controller => 'foo', :action => 'index'} %>
<div id="hoge"></div>

これをクリックとかの能動的な操作を必要とせずに、画面の初期表示段階で
{:controller => 'foo', :action => 'index'}を実行させるようにしたいです。

何か良い方法はありませんか?

よろしくお願い致します。







928:nobodyさん
10/02/14 16:10:17
>>918
include ActionController::UrlWriter

929:nobodyさん
10/02/14 16:24:39
>>927
function foo() {
<%= remote_function(オプション) %>
}
document.observe('dom:loaded', foo)
かな

930:nobodyさん
10/02/14 17:21:58 6lVOAOxG
>>929
ありがとうございます。
おかげさまで、うまく実装できました。

当方、jQueryを使っておりますので以下のようになりました。
jQueryでdocument.observe('dom:loaded', foo)に相当するものを探すのに
時間が掛かってしまいました。

<%= link_to_remote 'ほげ',
:update => "hoge",
:url => {:controller => 'foo', :action => 'index'} %>
<div id="hoge">
<script type="text/javascript">
function foo() {
<%= remote_function(:update => "user_week_block",
:url => {:controller => 'user_week', :action => 'index'}) %>
}
$(document).ready(foo)
</script>
</div>


931:nobodyさん
10/02/14 19:00:42
いやprototype.js使えよrailsなんだから…

932:nobodyさん
10/02/14 19:12:56
>>931
まあ、ありでしょ。jQueryもメリットある。
remote_function 使うんだからPrototypeもロードしてるはずだけど。

933:nobodyさん
10/02/14 19:13:48
jRailsつかえばいいのでは

934:nobodyさん
10/02/14 19:17:34
>>930
なんかコントローラ名とか漏れてるぞw
week blockって

935:nobodyさん
10/02/14 19:17:56
よほどUIに凝ってるサイトでもなければjquery使うメリットなんて無いと思うぞ

936:nobodyさん
10/02/14 20:31:43
web-app-themeをうまいこと使う方法ありませんか?

タグにいちいち :class => "label" ってやるのは DRY じゃないと思い
alias_method_chain で FormHelper のメソッドをオーバーライドしようと
label メソッドだけは上書きしてみたんですが

これを、text_field やら form_for やら同じようにやってくのは
これまたDRYじゃないと思い、そこでいきづまりました

:class が nil ならタグ名をクラスとする、スマートな方法があったら教えて下さい

937:936
10/02/14 21:36:39
自己レス
groundworkなるプロジェクトテンプレートが参考になりそうですね
Windows環境だと使えなさそうなので、Linux環境構築中…

938:nobodyさん
10/02/14 22:56:50
>>935
状況と好みによって選択だな。

jQuery は動的に DOM をバシバシいじるのは確かに楽だ。
配列や文字列なんかのユーティリティ系は Prototype のが素直に書けるよね。

939:nobodyさん
10/02/14 23:01:35
JS名前空間汚したくない人はjQuery好き

940:nobodyさん
10/02/14 23:28:02
俺レベルになると生でjavascript書く方が楽だ

941:nobodyさん
10/02/14 23:47:56
おれもヘルパー使う気にならん
結局生で書くことになったりするから、混在させるのが嫌だなあ

942:nobodyさん
10/02/15 07:55:38
このスレ的にRails3のunobstrusive javascriptはよいもの?


943:nobodyさん
10/02/15 07:58:05
unobtrusive ですた…


他のフレームワークで結構採用されてんのね。


944:nobodyさん
10/02/15 15:02:24
railsって自動で負荷分散もしてくれるの?
もしできるなら勉強してみるかな

945:nobodyさん
10/02/15 15:31:18
>>944
それは無理

946:921
10/02/15 16:20:19
前作ったの見てみたら、あらかじめ設定したフォルダに
入ってる複数の画像ファイルをjavascriptで持ってきてた。

1年以上前に書いたモノだから今見ると欠片もワカラン。
paperclip使って1ファイルづつ登録するしかないかな…

3000ファイルくらいあるけど

947:nobodyさん
10/02/15 18:42:58 9Iqj2ojJ

Rails基礎文法最速マスター - cod.note
URLリンク(d.hatena.ne.jp)


948:nobodyさん
10/02/15 19:34:53
>>947
なんという薄っぺらい内容・・・

「続きは本で!」メソッドだな。

949:nobodyさん
10/02/15 19:54:14
薄っぺらいっつーかどこかのヘルプを丸写ししただけじゃね
何で☆付いてんだろw

950:nobodyさん
10/02/15 20:01:34
Rails3っていつリリースされるんですか?

951:nobodyさん
10/02/15 20:12:33
>>950
βなら出てる。


952:nobodyさん
10/02/15 20:15:15
ソラ少年はべつにHead First Javaの翻訳者でも何でもないんだから
別にメソッドと呼ぶほどのものではなかろう。
あ、でもアフィは入ってくるのか。



953:nobodyさん
10/02/15 20:16:06
自演キモ過ぎ

954:nobodyさん
10/02/15 20:43:43
>>951
ありがとうございます。まだβでしたか。
新サービスをRailsで作りたいのに3を待つか2で行っちゃうかでウズウズ…

955:nobodyさん
10/02/15 20:50:13
βはちょっと見ただけだが、
* モンキーパッチするなど、実装の深いところを触るのは避ける
* プラグインは全滅するので使わない
というレベルでとりあえず2.3.5で作りはじめておくくらいなら、大丈夫かも。


956:nobodyさん
10/02/15 21:03:13
実運用するなら2.3.xがいいんじゃないだろうか
たぶんそれなりに開発できるようになるには半年くらいかかるように思う
リリースが大幅に遅れたプロジェクトは要注意。勉強なら平行してやればいいし

957:nobodyさん
10/02/16 00:18:29
Windows上でRuby1.9とした場合
サーバーはどれがいい(動く)の?

Mongrel? LightTPD? thin?

958:954
10/02/16 00:47:56
>>955
>>956
ありがとうございます。参考になりました。
とりあえず2.3.5で行くことにします。

959:nobodyさん
10/02/16 04:43:08
なんとかpid
ってファイルを手動で消さないと起動しないことあるんだけど
installの仕方間違えたのかな

960:nobodyさん
10/02/16 14:33:15
検索、一覧っていう
簡単な流れの画面作ってんだけど
検索画面の入力チェックってcontrollerにもりもり書いていいの?

961:nobodyさん
10/02/16 15:12:55 vr/Y6Irj
modelへ

962:nobodyさん
10/02/16 19:26:00
>>960
検索ワードのことなら、俺ならコントローラに書く。
検索ワードの入力チェック的なこと、そんなにいらなさそう。
検索式の中に入れるならエスケープは必要だけど。

963:nobodyさん
10/02/16 19:39:38
エスケープはモデルでやるべきだろ

964:960
10/02/16 20:02:05
>>962
検索ワードです。

>>963
プレースホルダ使ってるのでSQLInjectionなら大丈夫です。

URLリンク(gendosu.ddo.jp)モデルとは関係ない検索条件などのパラメータをviewとcontrollerでやりとりする
とりあえずここみながらmodelに書いてみた。

controllerの方がもりもりいけるけど、汚い。
modelだと専用class用意すんのがちょっと面倒。

大抵の人はcontrollerなのかな。

965:nobodyさん
10/02/16 20:40:30
コントローラはあくまでオマケで、 script/console でモデルだけ操作して
アプリすべての処理が簡単に行えるのが理想だと思ってる

966:nobodyさん
10/02/16 21:17:26
四階層モデルですねわかります

967:nobodyさん
10/02/16 23:27:40
(´・ω・`)

968:nobodyさん
10/02/16 23:33:25
controllerとmodelの間にサービス層が欲しい。
ある程度以上の規模になったら絶対必要だと思うんだけど皆はどうしてるんだろう。
独自に層を挟むのはアリなのかな?

969:nobodyさん
10/02/17 00:16:32
presenter層について紹介。
URLリンク(kpumuk.info)

これはrailsのブログでも紹介されていたよ。
URLリンク(weblog.rubyonrails.org)

970:nobodyさん
10/02/17 00:17:30
アリでしょ。
app/modelsの中に勝手にクラス作ればOK


971:nobodyさん
10/02/17 00:31:26
>>970
sample codeがみたい


972:968
10/02/17 00:36:13
>>969
>>970
ありがとうございます。

>>969
こんなプラグインがあるんですね。参考になりました。
ただapp直下に新しいディレクトリ作るのは少し抵抗あります。。

>>970
独自に作る場合はmodels以下に作るべきでしょうか?
個人的には、サービス層はコントローラクラスに依存するからcontrollers以下に作った方がすっきりしそう。
例えばloginコントローラ内でabcモデルとxyzモデルを利用する処理がある場合、サービスクラスを保持するファイル名はlogin_serviseのようにコントローラ名に依存すると思います。
なのでcontrollers以下に入れた方が綺麗かなぁと。ほとんど好き嫌いの問題だけど。

973:nobodyさん
10/02/17 01:07:35
サービス層はコントローラじゃないんだからcontrollers以下に作るのはおかしいと思うけどね。
サービス層はサービス層用にディレクトリ作って、まとめたらいいんじゃないかな


974:nobodyさん
10/02/17 12:50:45
ごめん、ちょっとわかんなくなってきた。
Service / Model / Controller の役割を誰か例付きで解説して。

975:nobodyさん
10/02/18 16:38:59 I3xk6O8m

Wikipediaのダウンロードできるデータファイル一覧
URLリンク(www.mwsoft.jp)

976:nobodyさん
10/02/18 18:26:01
>>969
これは、「層」というか、ControllerとViewに介在してシンプルにするパターン(って書いてあるけど)かなあ。

>>968,973,974
質問にもなるけどサービス層として切り出したいものって、
いわゆる「ビジネスロジック」ってやつかな、と思ってるんだけど合ってる?

データに属していない処理(複数のモデルが関わっていて、どのモデルにも置きにくい)で、
Webにも依存しないので単独でも起動できるようなものを、
「サービス」としてまとめたいのかなと思った。

(Railsの)ControllerはWeb依存なのでView間の遷移とかデータをViewにパスするとかを専門でやる。

俺のイメージはこんなん。

977:973
10/02/18 23:36:13
>>976
自分の言っているサービス層は、そういう意味だと思う。
モデルまたはサービス層はWebに依存しないようにして
runnerやconsoleで動作確認しやすいように作ってる。

とりあえず、今はlib/services以下にサービス層を作って置いてる
lib/services/sample_service.rbという感じ。
Services::SampleServiceという感じで名前が長くなるのがちょっと面倒だけど。
サービスを作る時の基準ってみんなどうしてるのかな。
自分は複数のモデルが絡むトランザクション処理とかだけサービスにまとめて、
単一のモデルで簡潔する処理は、そのモデル内に書いてる。

978:nobodyさん
10/02/19 02:41:48
libに置くのは最悪だろ
アプリケーションから取り外して再利用できるコードを置く場所

979:977
10/02/19 02:48:31
>>978
自動で読み込まれるところに置きたい
モデルとは区別したいので、app/models以外に置きたい
この2点で考えると、lib/serviceというディレクトリに置くのが手っ取り早いってだけで
今はそうしてる。

他にいい場所あったら教えて欲しい。
app/services以下に置く事にして、
environment.rbあたりにapp/services/*.rbをrequireする処理を書けばいいかな。


980:nobodyさん
10/02/19 08:35:28
そのへんのためかどうか知らないけど、Rails3ではRails.root/app/ の下の
ディレクトリが全部load pathに含まれるようになる。


981:nobodyさん
10/02/19 09:10:06
そういうのはrorは弱いしな。

梅。

982:nobodyさん
10/02/19 11:40:07
>>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さん
10/02/19 12:05:30
埋める前にそろそろ次スレ他てようぜ

984:nobodyさん
10/02/19 16:13:46 WbFNhWFy

【Ruby】Ruby on Rails Part9
スレリンク(php板)


985:nobodyさん
10/02/19 23:08:27
それじゃ埋め。

986:nobodyさん
10/02/20 01:47:12
埋められまsrん。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch