トップページ⇒php
1001コメント328KB

【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/
0507nobodyさん2011/04/20(水) 02:03:18.02ID:???
rails2.3でのモンキーパッチはどこに書くべきなの?
environment.rb ? lib下? initializers下?
0508nobodyさん2011/04/20(水) 04:49:30.72ID:SpABtcyW
>>506

まったく無関係。

attr_accessorはRubyの標準機能で、インスタンス変数の「読み書き用メソッドを追加」
するもの。

attr_accessibleは、ActiveModel::MassAssignmentSecurityの機能で、
newやらupdate_attributesやらでレコードの属性を「一括設定してもよい」属性を
指定するもの。逆に「一括設定を禁止」するattr_protectedとペアで考える。
0509nobodyさん2011/04/20(水) 04:50:10.65ID:SpABtcyW
>>507

タイミング的制約がなければ、俺はlibに置いてる。
0510nobodyさん2011/04/20(水) 08:58:11.63ID:FAFejryI

【これはすごい】Twitter検索を3倍高速化した記事の翻訳 - nokunoの日記
http://d.hatena.ne.jp/nokuno/20110420/1303251620
Twitter検索は世界で最もトラフィックの多い検索エンジンの一つであり、1日に10億クエリを処理している。
0511nobodyさん2011/04/20(水) 09:18:21.83ID:FAFejryI
我々の計画の次の段階は、検索スタックからRuby-on-Railsを完全に廃止してユーザが直接Blenderにアクセスできるようにすることで、さらなるレイテンシの削減を実現することである。
http://d.hatena.ne.jp/nokuno/20110420/1303251620
0512nobodyさん2011/04/20(水) 12:09:39.46ID:FAFejryI
Rails Static Pages
http://lindsaar.net/rails-static-pages
0513nobodyさん2011/04/20(水) 23:58:02.87ID:???
ID:FAFejryI
ウザい、死ね。
Rubyが一番!Ruby以外は糞!
0514nobodyさん2011/04/21(木) 05:28:44.05ID:???
つまりRubyだけでいい、RoRはいらない子なんですね、わかります。
0515nobodyさん2011/04/21(木) 08:42:44.25ID:AyRcodfn
includes して count するとわざわざ OUTER JOIN してるんだけどなんで?
結果変わらないよね?
0516nobodyさん2011/04/21(木) 10:40:53.70ID:???
ここでいいのかどうかわからんけど質問.

Rackってhtml5の<input type="file" multipart="multipart">に対応してます?
# Rackベースのフレームワーク使ってるんだけど,
# いろいろやってもファイルが1つしかアップロードされない...
0517nobodyさん2011/04/21(木) 11:16:03.79ID:AyRcodfn
×multipart
○multiple
05185162011/04/21(木) 13:18:28.38ID:???
>>517
あー,それのことです.
ここに書き間違えただけで,実際はちゃんと書いています.
0519nobodyさん2011/04/21(木) 17:33:22.01ID:???
あs
0520nobodyさん2011/04/21(木) 22:46:47.88ID:???
>>516
ミドルウェア次第じゃね?
なけりゃ造れ
0521nobodyさん2011/04/22(金) 09:45:49.15ID:???
初心者にオススメの入門書はありますか?
他言語(C++,PHP)のプログラミングはコードを読んだり簡単なものを作れる程度です
05225162011/04/22(金) 11:04:59.66ID:???
>>520
Rackじゃ面倒みないよ,ってこと?

たぶんlib/rack/util.rbのRack::Utils::Multipart::UploadedFile.parse_multipartで
やってるんだろうけど,
そこでファイルの情報を上書きしているっぽい(なので,最後のファイルの情報しか残らない).

しゃーない,オレオレ仕様でRackを改造するか.
0523nobodyさん2011/04/22(金) 11:15:22.25ID:KN8NpENC
でき上がったら本家にpull requestよろしく。
05245162011/04/22(金) 11:48:45.81ID:???
自己解決.
input要素のname属性に,サフィックス"[]"をつければいいということでした.
× <input type="file" name="file" "multiple="multiple">
# => {"file"=>{:filename=>"kitsune", :type=>"text/plain", :name=>"file", 〜}, 〜}
○ <input type="file" name="file[]" "multiple="multiple">
=> {"file"=>[{:filename=>"tanuki", :type=>"text/plain", :name=>"file[], 〜},
{:filename=>"kitsune", 〜}, 〜], 〜}
Rack::Utils::Multipart::normalize_paramsを読めば一目瞭然だったorz

# この"[]"を付けるってHTML5の仕様なの?"4.10.4.1.18 File Upload"にはそんなこと書いてなかったぞ?

お騒がせしましたm(_ _)m
05255162011/04/22(金) 11:52:21.17ID:???
なんかgdgdだ.どうせ過疎スレだし,ちゃんと書き直すか.

× <input type="file" name="file" multiple="multiple">
# => {"file"=>{:filename=>"kitsune", :type=>"text/plain", :name=>"file", 〜}, 〜}
○ <input type="file" name="file[]" multiple="multiple">
# => {"file"=>[{:filename=>"tanuki", :type=>"text/plain", :name=>"file[], 〜}, {:filename=>"kitsune", 〜}, 〜], 〜}
0526nobodyさん2011/04/22(金) 13:24:26.58ID:KN8NpENC
同名パラメータが複数あるときに[]付けるのは、
RailsがPHPのナニカから貰ってきた約束事だったような気がする。
0527nobodyさん2011/04/24(日) 01:25:25.59ID:???
ttp://gihyo.jp/book/2011/978-4-7741-4663-8

ついにRailsまで進出か
Railsの読み手は要求水準が高いからやめた方がいいと思うのだが
0528nobodyさん2011/04/24(日) 01:37:22.81ID:???
今のところ一番まともなRails3和書にはなりそうだね
アジャイル本今年中に翻訳されないかな
0529nobodyさん2011/04/24(日) 12:04:47.35ID:???
アジャイル本てこれか
ttp://www.amazon.com/Agile-Web-Development-Rails-Ruby/dp/1934356549/ref=sr_1_1?s=books&ie=UTF8&qid=1303614004&sr=1-1

ttp://www.amazon.com/Ruby-Rails-Tutorial-Addison-Wesley-Professional/dp/0321743121/ref=sr_1_2?s=books&ie=UTF8&qid=1303614021&sr=1-2
とかも気になる

向こうは本の値引きがあってええのう
上のはそのうち翻訳されそうだから下とりよせてみようかな
0530nobodyさん2011/04/24(日) 13:38:11.64ID:xwiqiHKV
pragprog のはイニシャルで AWDwR と呼ばれることが多いな。
0531nobodyさん2011/04/24(日) 17:24:07.44ID:???
>>529
なんでこんなに安いんだ!安いし早いし英語できる人はお得だね
0532nobodyさん2011/04/27(水) 03:15:48.30ID:???
railsのsession_storeってHA構成ならactive_record_store?
消すの面倒だから、kvsでいいのない?
0533nobodyさん2011/04/27(水) 08:57:06.92ID:SsEuVT9X
HAならmemcache系じゃないのかなぁ
05345332011/04/27(水) 08:59:23.19ID:SsEuVT9X
いやいや、生memcacheは死んだら終わりだからrepcacheとかのタグイ
0535nobodyさん2011/04/27(水) 10:44:43.44ID:???
TokyoCabinetじゃあかんの?
0536nobodyさん2011/04/27(水) 13:29:03.57ID:???
redisとかは?
0537nobodyさん2011/04/29(金) 18:14:58.16ID:27MpX19Q
rails3で rails g scaffold hoge
をしたときに
すでに model/hoge.rb があったりすると、

The name 'Hoge' is either already used in your application or reserved by Ruby on Rails.
Please choose an alternative and run this generator again.

とかいっておこられます。
昔は上書き確認になった気がするのですが、なぜこうなってしまったのでしょう…
0538nobodyさん2011/04/30(土) 20:55:56.83ID:0YfHZsvr
「S3Sync」は、rsyncのような使い方で、ローカルディスクの特定部分と「Amazon S3」のストレージ間を同期(ミラーリング)できるようにするツールです。
http://codezine.jp/article/detail/3614
0539nobodyさん2011/05/01(日) 16:28:03.28ID:???
あるリクエストに対するレスポンスをブラウザで表示した時のスナップショットを画像にして保存したいのですが
実現する方法はありますか?
手動でURLにアクセスしてスナップショットを撮り保存すればできるのですが、それをプログラム側で行いたいのです。

率直に考えると、ブラウザでHTMLがどのうようにレンダリングされるのかをプログラム側で知らなければならないので
そこら辺のレンダリング機能なり、ライブラリなりが必要になるのかなと思っています。
0540nobodyさん2011/05/01(日) 16:34:05.88ID:???
>>539
なにをいってるのかよくわからん
あとたぶん板違い
0541nobodyさん2011/05/01(日) 16:36:31.87ID:???
railsである処理だけ別トランザクションで実行するってどうするんかな??

ある発番処理で、既存ですでに存在する発番テーブルの
「現在ID」を+1して取ってくる必要があってどうするのかなと。
(メインの処理がロールバックされてもこの+1はコミットされる)

既存システム考慮しないんだったら、シーケンスオブジェクトとかでいいんだけど、
そうもいかなくて。

0542nobodyさん2011/05/01(日) 16:45:33.93ID:???
>>541
IDの+1をコミット「したい」から別トランザクションにしたいってこと?
あと使ってるDB、それからIDの発番方法がわからないと考えようがないような
05435412011/05/01(日) 16:49:43.48ID:???
>>542
>IDの+1をコミット「したい」から別トランザクションにしたいってこと?
そうそう。

発番方法は単純で、発番テーブルに用途毎に、
種別 現在値 
項目A 1
項目B 10
とかなってて、「項目A」の次のIDがほしい場合2を取ってくる感じ。
で、oracle。
0544nobodyさん2011/05/01(日) 17:59:01.29ID:???
rorは貧者向けのシステムだな。
0545nobodyさん2011/05/02(月) 01:24:27.77ID:???
ルビー使っている奴は、ルピー。
0546nobodyさん2011/05/02(月) 03:00:59.17ID:???
貧者向けだが富豪的プログラミングが要求される
0547nobodyさん2011/05/02(月) 11:10:02.83ID:???
>>546
すまん、いみがわからない。
0548nobodyさん2011/05/02(月) 22:20:26.76ID:???
「富豪エンジニアリング」は聞いたことあるけど
「富豪プログラミング」は初めて聞いた。

富豪プログラミングってどういう意味ですか?
0549nobodyさん2011/05/02(月) 22:26:48.62ID:ADMNRZKW
富豪的プログラミングといえば増井さんの記事で有名だと思うのだが。
http://www.pitecan.com/fugo.html
0550nobodyさん2011/05/02(月) 23:58:05.01ID:???
貧者向けでありながら富豪的プログラミングになるのが理解出来ない
0551nobodyさん2011/05/03(火) 00:44:28.94ID:???
すごいバカだな
0552nobodyさん2011/05/03(火) 01:02:29.31ID:???
貧者は貧者 RailsはRails
Railsは貧者向けと言えるだろうか?
0553nobodyさん2011/05/03(火) 10:29:40.44ID:???
プログラム(フレームワーク)の出来と利用者の経済状況が相関するか調べればいいだけの話
暇なヤツがやれ

まあ、プログラムの良し悪しなんて数値化できんけどな
0554nobodyさん2011/05/04(水) 01:08:45.50ID:???
日本では文脈が共有されていないが、アメリカでは持たざるものが勝つための一点突破いくぜヒップホッパー的ポジショニングフレームワークとしてセルアウトされたんだよ
その辺のコンテクストが「貧者」という表現にリンクしたと思われる
0555nobodyさん2011/05/05(木) 01:12:25.25ID:???
>>554
こいつナルシストだな
0556nobodyさん2011/05/05(木) 07:24:44.33ID:???
 
0557nobodyさん2011/05/05(木) 19:47:17.50ID:otGJA30c
prototype.js死亡www
0558nobodyさん2011/05/05(木) 20:32:44.28ID:???
>>557
kwsk
0559nobodyさん2011/05/05(木) 20:33:45.94ID:???
rails3.1 で標準JSライブラリが jquery に変更
0560nobodyさん2011/05/05(木) 20:38:16.88ID:???
>>559
thx
まあ今後の開発はjqueryでもいいや
0561nobodyさん2011/05/05(木) 21:38:54.90ID:???
マジかよ…jqueryはもはやjavascriptじゃないしデザイナ向けっぽくて嫌いなのになぁ
どんどんブラックボックス化していくね。
非プログラマ向けのフレームワーク目指してるのかな
0562nobodyさん2011/05/05(木) 22:17:44.26ID:???
3.1は scss と coffee が追加されて逆にプログラマ向けになってんぞ
0563nobodyさん2011/05/06(金) 00:43:07.40ID:???
仕事で別FWでやってるけど、Ajax系画面だとクライアント側は完全にjQuery主体の開発になって
サーバはjQueryに部分的なviewやjsonデータを渡す為の存在になりつつある
0564nobodyさん2011/05/06(金) 01:27:43.65ID:???
>> 563
そんなかんじだとGWTとかDojoとかのオールインワンの方がよいんじゃないの?
0565nobodyさん2011/05/06(金) 10:10:19.86ID:???
>>557-559
CoffeeScriptはどうなったんだ
0566nobodyさん2011/05/06(金) 10:58:48.54ID:sYnDWkYR
coffeescriptもjavascriptも使えるようになっている。
coffeescriptやscssは、リクエスト時に自動的にjavascript、cssに変換される。
(productionでは結果をキャッシュしておける)

という感じ。
0567nobodyさん2011/05/07(土) 18:34:16.00ID:sXZAwlv0
1000行くらいあるクソ長いメソッドの、1行だけを書き換えたいのですが
オープンクラスベースで何かよい方法はあるでしょうか?
0568nobodyさん2011/05/07(土) 19:37:47.01ID:???
リファクタリングする
0569nobodyさん2011/05/08(日) 18:33:31.95ID:???
Rails2.3使ってんだけど、スレッドセーフじゃないの?
passengerの場合は、MPMダメで
mongrelだとcluster mongrelでマルチプロセスで稼働させるのが当たり前?


スレッド絡みでアプリ側で気にしないといけないことってある?
インスタンス変数やばいとか。
0570nobodyさん2011/05/08(日) 20:01:33.82ID:???
global以外でmodelからcontrollerの変数(sessionとか)を参照ってどうやんの?
0571nobodyさん2011/05/09(月) 01:22:57.54ID:???
引数で引き渡す
0572nobodyさん2011/05/09(月) 09:11:07.82ID:WKS3xz7s
2.1.2を利用してるのですが
ログイン機能を実装する上でオススメのプラグイン?はありますか?
人気があるっぽいDeviseは2.3からみたいですし……
0573nobodyさん2011/05/10(火) 00:59:17.24ID:???
>>570
thread.currentっていう方法もある
0574nobodyさん2011/05/11(水) 00:24:08.58ID:???
>>569
passengerはpreforkでもworkerでも動くよ。
ただし、どっちにせよapacheとは別プロセスでRailsアプリが動くので、
スレッドモデルではない。
0575nobodyさん2011/05/11(水) 04:35:44.27ID:???
mongrelよりunicornだろjk
0576nobodyさん2011/05/11(水) 13:08:27.79ID:???
3.1beta1でrails g scaffoldしたらjavascript runtimeが無いといか言われるんだけどどうすれば?
0577nobodyさん2011/05/11(水) 20:03:58.07ID:tz+mrAHd
coffeescriptからjavascriptへの変換にexecjsを使っている。
coffeescriptがいらないならGemfileから外せばいいと思うけど、
scaffoldの生成に使ってるのかな。

https://github.com/sstephenson/execjs#readme
nodejsとかspidermonkeyとか、選択肢はいろいろあるようで。
0578nobodyさん2011/05/12(木) 20:27:02.32ID:???
> nodejsとかspidermonkey

これはどこにあるの?
0579nobodyさん2011/05/12(木) 20:53:09.28ID:HIxOD8Tc
SpiderMonkeyはMozillaのJSランタイムを独立させたもの。
Node.jsは最近有名だろ?

あと、WindowsやMacだとやOSに付いてくるJSランタイムが利用されるからとくに
用意はいらないはず。
05805692011/05/13(金) 00:22:45.95ID:???
>>574
なるほど。

>>575
ありがと。試してみる。


スレッドモデルで動かしたいっていう要望はないんだろうか?
不思議。
0581nobodyさん2011/05/13(金) 20:09:04.20ID:???
こんな上層レイアの糞フレームワークばかり使ってたら腕も腐るわ
とか思って仕方なくRails使ってたが
最新の流行とか自然にキャッチアップ出来てるのはなかなか良いな。
0582nobodyさん2011/05/13(金) 23:17:38.21ID:???
                / ̄\
               |     |
               \___/
               __|__
             /      \
            /  ::\:::/:::: \     
          /   <●>::::::<●> \   
          |     (__人__)     |
           \     ` ⌒´    ,/   
   r、     r、/          ヘ
   ヽヾ 三 |:l1             ヽ
    \>ヽ/ |` }            | |
     ヘ lノ `'ソ             | |
      /´  /             |. |
      \. ィ                |  |
          |                |  |
0583nobodyさん2011/05/14(土) 00:03:16.94ID:???
おいそのAAむかつくからやめろ
0584nobodyさん2011/05/14(土) 09:33:01.42ID:???
              / ̄\
             |     |
             \___/
             ____|___
           /        \
   r、     r、/          ヘ
   ヽヾ 三 |:l1             ヽ
    \>ヽ/ |` }            | |
     ヘ lノ `'ソ             | |
      /´  /             |. |
      \. ィ                |  |
          |                |  |
0585nobodyさん2011/05/16(月) 01:41:38.37ID:m69dgM/G
Streaming Examples
Example 48

It is very easy in web2py to stream large files. Here is an example of a controller that does so:1.
2.
3.
4. def streamer():
import os
path=os.path.join(request.folder,'private','largefile.mpeg4')
return response.stream(open(path,'rb'),chunk_size=4096)

http://web2py.com/examples/default/examples#streaming_examples
0586nobodyさん2011/05/16(月) 01:48:28.98ID:m69dgM/G
今日のPython: web2py フレームワークについて
ttp://todayspython.blogspot.com/2011/05/web2py.html

01 はじめに - web2py-japan
ttp://sites.google.com/site/web2pyjapan/book/01
0587nobodyさん2011/05/16(月) 05:19:50.55ID:m69dgM/G
IT virtuoso:40秒で作るweb2pyアプリ
ttp://nakaken.mediacat-blog.jp/e50989.html
0588nobodyさん2011/05/16(月) 05:44:50.99ID:++XPfUJp
http://web2py.com/examples/default/download
http://www.web2py.com/

http://127.0.0.1:8000/admin/wizard/index
http://127.0.0.1:8000/admin/default/site

Reveal Picasa http://www.web2py.com/appliances/default/show/75
VideoTest http://www.web2py.com/appliances/default/show/38
Ajax web chat  http://www.web2py.com/appliances/default/show/34
WordPressClone http://www.web2py.com/appliances/default/show/36
A simple picture blog http://www.web2py.com/appliances/default/show/32
Sample hello <facebook_user>  http://www.web2py.com/appliances/default/show/48

web2py on the google appengine
http://www.youtube.com/watch?v=YZTG2IBMXeU#at=337
0589nobodyさん2011/05/16(月) 06:34:15.60ID:JOIWjGx4
YouTube - web2py & GAE demo #1
http://www.youtube.com/watch?v=RVh2viuBooQ

web2py "shootout" tutorial
http://www.youtube.com/watch?v=53DF4pkeriU
0590nobodyさん2011/05/16(月) 14:40:11.89ID:Eo4DWAc0
Ruby on Railsのアジャイル開発の売上実績を公開しました 〜2年間で20倍に伸びました:ベンチャービジネス千里眼:ITmedia オルタナティブ・ブログ
http://blogs.itmedia.co.jp/yoshimasa/2011/05/ruby-on-rails22-4a6a.html
0591nobodyさん2011/05/17(火) 04:51:13.26ID:KKbgQnI3
http://b.hatena.ne.jp/entry/intridea.com/2011/5/13/rails3-gems

Views/Page and Admin Scaffold
compass (https://github.com/chriseppstein/compass)
haml (https://github.com/nex3/haml)
sanitize (https://github.com/rgrove/sanitize)
rails_admin (https://github.com/sferik/rails_admin)
web-app-theme (https://github.com/andreferraro/web-app-theme)

Search Solutions
meta_seach (https://github.com/ernie/meta_search)
meta_where (https://github.com/ernie/meta_where)
thinking-sphinx (https://github.com/freelancing-god/thinking-sphinx)
acts_at_indexed (https://github.com/dougal/acts_as_indexed)
sunspot (https://github.com/outoftime/sunspot)
0592nobodyさん2011/05/17(火) 07:16:04.33ID:???
apache passengerかapache unicornかで悩むわ。
unicornの方が楽そうだけど、プロセス監視が少し面倒。
passengerはapacheだけ面倒見ておけばよさそうなので、passengerがいいのかな。
運用してる人います?
0593nobodyさん2011/05/17(火) 07:44:56.43ID:???
関係ないけど gem clean したら稼動中のバージョンの passenger も消えちゃうのなんとかしてくれぼんぬ。
0594nobodyさん2011/05/17(火) 07:50:00.45ID:???
>>592
nginx + unicornで決まりだろjk
0595nobodyさん2011/05/17(火) 20:31:05.36ID:???
thinとかどうなんだろ

rails出始めの頃は動作環境の選択肢が狭くて悩んだけど
今は逆に多すぎて困る
0596nobodyさん2011/05/18(水) 00:27:50.78ID:???
nginx
これの監視はどうするよ?
0597nobodyさん2011/05/18(水) 03:47:33.33ID:TUVhOx+I
DHH’s RailsConf 2011 Keynote Live-Blogged Here
http://www.rubyinside.com/dhh-keynote-streaming-live-from-railsconf-2011-right-here-right-now-4769.html
0598nobodyさん2011/05/18(水) 12:14:03.28ID:???
thinは手軽な割りにパフォーマンスも結構いいよね。
padrinoではデフォルトサーバがwebrickじゃなくthinになってる。
ローカル環境でのテストには最強だと思う
0599nobodyさん2011/05/21(土) 17:10:23.27ID:???
Rails3でScaffoldする際に
他のテーブルと連携させる場合はRails2.0と違う指定の仕方だった気がするのですが
どうすればいいか書いてあるURLとかありませんか?orz
0600nobodyさん2011/05/21(土) 19:30:30.51ID:QDAc9MKf
t.references なら2の頃からあったけど、なんのことだろ。
0601nobodyさん2011/05/21(土) 23:39:22.47ID:???
それscaffoldやない、migrationや
0602nobodyさん2011/05/22(日) 12:24:26.19ID:gIr/UGhz
>>599
何か心当たりがあるの?
0603nobodyさん2011/05/23(月) 11:47:41.53ID:lzKhlBAh
ちょっとお聞きしたいのですが、railsってphpのvar_dumpみたいにブラウザに
変数出力してのデバッグってしづらいですよね。
何かいい方法ないでしょうか?それ用のgemとか・・
もしないなら自分で作ってみようと思うんですが、あんまり需要ないんですかね?
0604nobodyさん2011/05/23(月) 12:01:23.77ID:tsYc05ju
<%= debug(foobar) %>

でなく?
06056032011/05/23(月) 13:12:04.83ID:lzKhlBAh
これってコントローラとかモデルでは使えないですよね?
Rails.logger.debugなら知っているんですが、ブラウザに出力させたいのです。
0606nobodyさん2011/05/23(月) 16:31:36.20ID:e9228GLD
そういうpluginもあった気がするが
手っ取り早く to_yaml 使うのもアリかな
viewで、<%= @hoge.to_yaml %> とかやればいい。
日本語が含まれてる場合、ya2yaml gemを入れる必要があるかも。
■ このスレッドは過去ログ倉庫に格納されています