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

【Ruby】Ruby on Rails Part7

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん2009/04/30(木) 23:07:27ID:???
■前 Ruby on Rails のスレ が
http://pc11.2ch.net/test/read.cgi/php/1224838013/

■参考サイト
<英語>
本家:http://www.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/

■参考スレ(プログラム板)
Rubyについて Part 35
http://pc12.2ch.net/test/read.cgi/tech/1238194350/
Ruby 初心者スレッド Part 27
http://pc12.2ch.net/test/read.cgi/tech/1238632943/l50
0830nobodyさん2009/08/18(火) 14:36:53ID:xQbi8Iqy
Rails.public_pathをtestの時だけ変更したいんですが・・・。
config/environments/test.rbに
Rails.public_path = RAILS_ROOT + "/test/public"
を追加してテスト環境モードでサーバを起動して、
http://localhost:3000/foo
にアクセスしても、RAILS_ROOT + "/public/foo"のファイルが見えてしまいます。

何かいい解決方法はないでしょうか。
0831nobodyさん2009/08/18(火) 17:53:06ID:???
>>830
apacheとかウェブサーバー側で操作すんじゃないの?
08328302009/08/18(火) 18:19:34ID:xQbi8Iqy
railsって特に設定しなくても
RAILD_ROOT + "/public"
を公開用ディレクトリとして認識してくれます。
んで、どこに設定されているんだろうかと調べていたら
Rails.public_pathという設定に行き着きました。
それだったらRails.public_pathに何か設定する方法があるだろうと思っています。
サーバ側の設定なんでしょうか?
仮にサーバだとしてRailsはいつRAILS_ROOTをサーバに渡すんでしょう。
0833nobodyさん2009/08/18(火) 18:27:06ID:???
夜になったらrails仙人が来るから、それまで待っててね
0834nobodyさん2009/08/18(火) 19:38:30ID:???
>>830
mongrel 使ってるんだよね?
08358302009/08/18(火) 20:26:23ID:xQbi8Iqy
そうです。
0836nobodyさん2009/08/19(水) 00:27:33ID:???
使ったことはないがmongrelなら「--prefix」というオプションがある
これに指定すればいけるんじゃないだろうか
時間がなくて試せないので、動作報告をくれるとうれしい
08378302009/08/19(水) 02:50:08ID:/4UU0U8g
--prefixは知っていますがうまく動作しません

mongrelで--prefixを指定したときはブラウザがアクセスするときのURLが変化します。
例えば、--prefixなしの時
http://localhost:3000/order
等としてアクセスしますが、--prefix=/fooをつけると
http://localhost:3000/foo/order
という風になります。
私の期待しているfilesystem上のPATHを変化させる方法ではありません
08388162009/08/19(水) 12:32:09ID:???
レスありがとうさんです。

fixtureに書く方法だと、どうしてもテスト用のデータになっちゃうんで、
結局、新たにmigration1個作ってそこに書く方法でやっちゃた。
0839nobodyさん2009/08/19(水) 13:22:08ID:???
質問があります。

viewのedit.html.erbのform_for内で入れ子にしようと fileds_for を使ったところ、
Hoge expected, got HashWithIndifferentAccess とか言われてオブジェクトの更新ができません。

belongs_toで関連付けた Hoge.my_hage= に Hashがそのまま代入されているようなのですが、
どうしたらよいものでしょうか?

構成は以下のようになってます

model: hoge.rb

class Hoge < ActiveRecord::Base
 belongs_to :my_hage, :class_name => "Hage"

view: edit.html.erb # /nested/hage/1234/edit

<% form_for([:nested, @hage]) do |f| %>
 <%= f.error_messages %>

 (略)

 <% f.fields_for :my_hage, @hoge.my_hage do |hage_form| %>
  <p>
   <%= hage_form.label :name%><br />
   <%= hage_form.text_area :name %>
  </p>
 <% end %>
 <%= f.submit '更新' %>
<% end %>
08408392009/08/19(水) 13:22:50ID:???
>>839のつづき

controller: nested/hage_controller.rb

 def update
  @hage = Hage.find(params[:id])

  respond_to do |format|
   if @hage.update_attributes(params[:question])
    flash[:notice] = 'Nested::Hage was successfully updated.'
    format.html { redirect_to(@hage) }
    format.xml { head :ok }
   else
    format.html { render :action => "edit" }
    format.xml { render :xml => @hage.errors, :status => :unprocessable_entity }
   end
  end
 end
08418392009/08/19(水) 14:31:14ID:???
>>839-840ですが、accepts_nested_attributes_for を使うことで解決いたしました。

class Hoge < ActiveRecord::Base
 belongs_to :my_hage, :class_name => "Hage"
 accepts_nested_attributes_for :my_hage

でOKでした。

以下が参考になりました。
Localization expected, got HashWithIndifferentAccess - Ruby Forum
http://www.ruby-forum.com/topic/184877


ありがとうございました。おさわがせしました。
0842nobodyさん2009/08/19(水) 15:02:29ID:???
>>837
うわ、すまんかった。
このオプションでいけるんじゃないだろうか。

--root PATH
Set the document root (default 'public')
0843nobodyさん2009/08/20(木) 20:29:11ID:OSASGkcC
>>120
遅レスですが、同じくWindows環境のattachment_fuで添付ファイルが壊れる現象起こりました。

で、対応としては>>126さんのアドバイスを参考にして
vendor\plugins\attachment_fu\lib\technoweenie\attachment_fu.rbの370行目辺り
File.read(temp_path)をFile.open(temp_path, "rb"){|f| f.read}に変更しました。

あと、メタデータのsizeが設定されたり、されなかったりという現象も起こったので
http://nonki.yoka-yoka.jp/d2009-07-09.htmlを参考にRuby\lib\ruby\1.8\tempfile.rbにも手を入れました。

以上で添付ファイルのDBへの格納、表示ともにうまくいっています。
0844nobodyさん2009/08/20(木) 22:42:43ID:???
マゾですかっwww
08458302009/08/23(日) 04:36:10ID:vSt0R6A2
>>842さんご紹介の--rootでうまくいきました。
mongrel_rails start -r test/public
でtest以下のpublicを読んでくれました。
0846nobodyさん2009/08/23(日) 09:17:36ID:???
Rails3っていつリリースされるって情報は出てないんですか?
0847nobodyさん2009/08/23(日) 15:34:00ID:???
先日のルビー会議でrails3をリリースするという情報はあったがそれ以降何も聞かんな
0848nobodyさん2009/08/27(木) 18:15:48ID:???
お聞きいたします。

他のモデルとコントローラー両方から参照したいあるモデル(User,UserSession)があります。

セッション情報やユーザー情報が何度も参照されるため、
下記のように簡易的にクラス変数でキャッシュみたいなことをしたのですが、
デプロイするproductionモードとローカルのdevelopmentでは全然違う挙動をします。
というか、productionモードではわけがわからない動作をします。

 def self.current_user
  return @@current_user if defined?(@@current_user)
  current_user_session = UserSession.current_user_session
  @@current_user = current_user_session && current_user_session.user
 end

productionモードでは、クラス変数が初期化されたりしない?ということまではわかった(つまり、クラス変数が使いまわされる)
のですが、代替の方法がよくわかりません。
どのように対処したものでしょうか?

Rails 2.3.2です。
0849nobodyさん2009/08/27(木) 18:21:54ID:???
Railsは頼むから前方互換性を高めてくれよん

PHPみたいなことはや(ry
0850nobodyさん2009/08/27(木) 18:24:52ID:???
Railsと比べればPHPのほうが遥かに互換性高いけど
0851nobodyさん2009/08/27(木) 20:24:29ID:???
yes
0852nobodyさん2009/08/27(木) 22:55:33ID:???
>>849
無駄に内部を弄るから互換性で苦しむはめになるんだよ
0853nobodyさん2009/08/28(金) 06:03:30ID:???
フレームワークと言語仕様を比べることに何の違和感も持ってないのか
0854nobodyさん2009/08/28(金) 06:51:07ID:???
>>853
同意。
PHPは言語で、Railsはフレームワーク。
比べるなら、PHPとRubyを比較するべきだよな。
まぁ、>>>849はそれすら分かっていないのかもしれないが。
0855nobodyさん2009/08/28(金) 10:44:15ID:???
849はPHPも知らない
知っているのは伝聞のFUD
0856nobodyさん2009/08/28(金) 11:31:52ID:???
PHPは互換性を維持するために全身速度が遅く、色々縛られているが、
rubyはぶっちゃけ、過去のことなど放り投げちまう開発姿勢だから名、

互換性で比べたらphpに軍配上がっちまう罠、
比較対象として持ち出した奴が バ・カ
0857nobodyさん2009/08/28(金) 15:27:38ID:???
yakinikunoはや(ry
0858nobodyさん2009/08/29(土) 14:58:31ID:???
kawazakananoハヤ
0859nobodyさん2009/08/29(土) 15:02:17ID:???
PHPで10行以上のコード書きたくない><
PHPで2ファイル以上のコード読みたくない><
0860nobodyさん2009/08/29(土) 15:12:31ID:???
PHPスレかと思ってしまったではないか
0861nobodyさん2009/09/02(水) 16:56:18ID:???
互換性は別にいいが機能低下は避けていただきたい
0862nobodyさん2009/09/03(木) 08:08:48ID:801E0K0+
こんにちは。

他のスレッドで質問したのですが、スレッド違いということで、
再度、ここに書かせて頂きます。

前の開発者がRuby Railsでサイトを構築しました。

今回、私が、別の機能を付け足すことになりましたが、
私はRuby Railsを知りませんので、/manage/フォルダ以下に、
PHPで開発することになりました。
/manage/以下に、.htaccessを設定したのですが、動かず、404ページが返ってきます。

自分なりに色々調べた結果、Passenger/mod_railsを使っているため、
/manage/の.htaccessが、それによって上書きされているようです。


RailsAllowModRewrite On
を使えば、なおるようなことを言われたのですが、
/manage/.htaccessでそのように設定しても、/manage/.htaccessに設定してあることが
有効になりません。

どなたか知っていたら教えて頂けないでしょうか。
よろしくお願いします。
0863nobodyさん2009/09/03(木) 08:48:46ID:???
ぜんぜん具体的じゃないからさっぱりわからん。
0864nobodyさん2009/09/03(木) 09:10:30ID:???
ドキュメントルートがpublic_htmlではないということはないだろうか。
普通Railsのアプリ一式が入っているディレクトリをRAILS_ROOTとすると、
ドキュメントルートはRAILS_ROOT/publicにするのだが。
Passengerを使ってるのなら、ApacheのDocumentRootディレクティブを調べてみてほしい。
0865nobodyさん2009/09/03(木) 11:28:15ID:???
http://www.modrails.com/documentation/Users%20guide%202.0.html

5.8.3. RailsAllowModRewrite <on|off>
<略>
This option may occur once, in the global server configuration or in a virtual host configuration block.
<略>

ってことで、apache設定の最上位か、<VirtualHost></VirtualHost>の中に
しか書けない。

0866nobodyさん2009/09/03(木) 11:52:21ID:???
http://pc12.2ch.net/test/read.cgi/tech/1249687283/488-
0867nobodyさん2009/09/03(木) 14:10:11ID:???
下記のような問題なのですが、みなさんどうしてらっしゃいますでしょうか?
[Rails] ちょっとしたタイプをどこに置くか - capsctrldays(2006-05-30)
http://capsctrl.que.jp/kdmsnr/diary/20060530.html#p01

お聞かせ願いたいです。

具体的には、上記サイトにもあるのですが、
 1:男性
 2:女性

 1:承認待ち
 2:活動中
 3:削除

のような定数とActiveRecordを使う上での兼ね合いといいますか。

・配列(Hashとかにしちゃう)
・テーブルにしちゃう

どちらがオススメでしょうか?
0868nobodyさん2009/09/03(木) 14:16:09ID:???
table
08698622009/09/03(木) 14:21:23ID:4G6aJPkU
ご返信ありがとうございます。
>>864
そうです。
分かりやすく言うために、public_htmlといいましたが、
実際は、RAILS_ROOT/publicになってます。
で、今回、RAILS_ROOT/public/manage/フォルダにPHPで開発することになり、
(私はPHP言語しか知りません)
RAILS_ROOT/public/manage/.htaccessを作成したのですが、
.htaccessが作動しないのです。
私がRuby Railsの知識が全くないので、どのような設定になっているか分からない状況です。

>>865
httpd.confの中では、<virtual></virtual>はコメントアウトになっています。
ただ、Include /etc/httpd/conf/lxadmin/lxadmin.confとかいてあり、
lxadmin.confの中には、いくつかのconfファイルがincludeしてあります。
そのうちの一つのdefault.confには、下記の<virtual>タグが記載されています。
<VirtualHost \IP address:80\>
DocumentRoot /home/lxadmin/httpd/default/
servername default
ServerAlias default.*
<Ifmodule mod_userdir.c>
Userdir "public_html"
</Ifmodule>
</VirtualHost>
この中にRailsAllowModRewrite <on|off> を記入すれば宜しいのでしょうか。

無知な者でご迷惑おかけします。
もし対処法をご存知な方がいらっしゃいましたら、お知らせください。


よろしくお願いします。
0870nobodyさん2009/09/03(木) 14:43:27ID:???
>>869
> 分かりやすく言うために、public_htmlといいましたが、
> 実際は、RAILS_ROOT/publicになってます。

間違った情報がわかりやすいわけないだろ。
逆の立場だったらわかりやすいと思うか?
おまえの中では勝手に同じものと処理してるかもしれんが、
他人がそんなことわかるわけないだろ。
質問するならちょっとは考えろ。無知とか関係ない。

> Passengerを使ってるのなら、ApacheのDocumentRootディレクティブを調べてみてほしい。

DocumentRoot /home/lxadmin/httpd/default/

こうなってるわけだが、ちゃんとレスを見たか?
RAILS_ROOT/publicはドキュメントルートとして機能してないと思うが。

「実際は、RAILS_ROOT/publicになってます。」
↑
これまでわかりやすく書いたのなら、
掲示板じゃわからんから周りの友達にでも聞け。
08718672009/09/03(木) 15:05:15ID:???
>>868
おー、tableですか。


DB使わないスクリプトなんかだと、Hashなんかでやってしまい、その延長でついHashにしてしまいそうになるのですが、
テーブル使う利点ってなんなんでしょうか?
ActiveRecordを使えるから、ってことでいいんでしょうか?
あと、viewでcollection_selectがそのまま使える、とか。
08728622009/09/03(木) 16:46:48ID:Gs6kTm0I
>>870

ご回答ありがとうございます。
DocumentRootがどこなのか、分かりませんでした。
/home/lxadmin/httpd/default/ の下に、
/home/lxadmin/httpd/default/manage/とやれば良いということでしょうか。
/home/lxadmin/httpd/default/phpinfo.php
を作成し、mydomain.com/phpinfo.phpとアクセスしたのですが、
404が返ってきました。

Ruby Railsの為、私の知っている通常のサーバーの設定でない為、よく分かりません。
私、海外の田舎でプログラマをやっている為、あまりこの分野の友達がいません。
もし、ご存知の方がいらっしゃいましたら、教えて頂けないでしょうか。
お手数かけて申し訳ございません。

よろしくお願いします。
08738622009/09/03(木) 17:04:03ID:Yl0KYuqm
付け足しですが、
実際、色々動いてるファイルは、
/home/admin/vhosts/mydomain.com/public/
配下に設置してあります。

お手数かけましてすみません。
よろしくお願い致します。
0874nobodyさん2009/09/03(木) 20:34:55ID:???
>>872
マルチうぜぇ
ttp://pc12.2ch.net/test/read.cgi/tech/1249687283/488-491
ttp://pc12.2ch.net/test/read.cgi/tech/1249687283/554-555

htaccessかPHPのスレに行け。
0875nobodyさん2009/09/03(木) 22:53:48ID:???
>>867
データの多さに関係なく ActiveRecord で管理するのが一番融通が利くし楽でしょ。
だけど初心者の人はたいてい配列にしてマジックナンバーを撒き散らすよ
酷いのになると配列(の定数)すらない場合も。
0876nobodyさん2009/09/04(金) 00:55:17ID:???
>>872
sine
0877nobodyさん2009/09/04(金) 08:19:25ID:???
>875
でもActiveRecordになるとreadだけじゃなくてwriteもできるんだぜ。
定数ということを表現できてないじゃないか。
0878nobodyさん2009/09/04(金) 12:52:12ID:???
has_one :genderとかするんだ?


なんか良い感じのプラグインあればよさそうだけど。

これとかは?
http://d.hatena.ne.jp/fujisan3776/20080907/1221480262
0879nobodyさん2009/09/04(金) 13:20:14ID:???
>>877
定数を表現する必要がどこにある
0880nobodyさん2009/09/04(金) 16:27:16ID:???
>>862
Rails勉強しようって気はないのか?
なければスレ違い
08818672009/09/04(金) 16:59:50ID:???
>>875-879
サンクス
ActiveRecordで管理した方が利点あるように感じました。テーブルでいってみます。

>>878
こんなプラグインあるんですね。ふーむ、用途的に違うようなきがしないでもない??
0882nobodyさん2009/09/04(金) 17:06:45ID:???
ちょっとした質問よろしいでしょうか?

button_toヘルパーにてGETでパラメーターつきで、RESTのnew actionのボタン型のリンクを作ろうとしたのですが、
うまく行きません。

button_to(new_item_path(:hage_id => 1234), {:method => :get})

とすると、HTML上では、action="/item/new?hage_id=1234"となっているのですが、
<form>のせいか、実際にボタンを踏むと、/item/new? に飛ばされてしまい、
パラメータがなくなってしまいます(´・ω・`)

たぶんに、
<input type="hidden" name="hage_id" value="1234" />
みたいのを仕込まないといけない、というのはわかるのですが、ソース見る限りbutton_toではできないですよね。

一発ポンでできるヘルパーみたいなのってないもんでしょうか…?
0883nobodyさん2009/09/04(金) 17:47:59ID:???
Item belongs to Hage ということなら、config/routes.rb が
ちゃんと書かれてれば
new_hage_item_path(:hage_id => 1234, {:method => :get })
で
/hage/1234/item/new
になる気がしないでもない。
# 複数形にするんだっけ……?
0884nobodyさん2009/09/04(金) 18:05:22ID:???
GETならリンクにすればいいと思うのだがまずいのか?
0885nobodyさん2009/09/04(金) 22:23:08ID:???
>>880
というかRailsやPHPとかの環境の選択ってプロジェクトと一蓮托生じゃないの?
混在とか今時当たり前なの?気色悪いとか思わんのかな。

0886nobodyさん2009/09/04(金) 22:53:13ID:???
気色悪い

けど残念なことに過去の資産を利用するためにRubyからPerl/PHPを呼ぶこともしばしば
0887nobodyさん2009/09/04(金) 22:55:06ID:???
>>881
ARで管理する場合はpositionカラムも一緒に入れてacts_as_listしておくとさらに後が楽。
完全に自分用のアプリで、順番は id や created_at 順でじゅうぶんっていうことならいらないけど。
0888nobodyさん2009/09/04(金) 23:51:53ID:???
定数をActiveRecordで管理すると、使用するときはどうなるのよ?
Gender.findById("1").name //チンコ
Gender.findById("0").name //マンコ

やだよ。そんなのw
0889nobodyさん2009/09/05(土) 00:23:06ID:???
君はRubyとかRailsではなくてシステムの作り方を勉強しなさい
0890nobodyさん2009/09/05(土) 00:26:27ID:???
答えられない質問を受けたとき、そうやって相手の人格を
非難するような人っているよね。
0891nobodyさん2009/09/05(土) 00:30:55ID:???
お前が考える「人格」ってなんだ?
0892nobodyさん2009/09/05(土) 00:39:38ID:???
人格はちょっと言い間違ったかも。
言いたかったことは、相手の論点について反論するのではなく、
その人の性格、能力、過去などについての批判を加えるのは卑怯では
ないかということ。(そういうのってよくあるでしょ)
0893nobodyさん2009/09/05(土) 00:44:28ID:???
でっていう
0894nobodyさん2009/09/05(土) 00:45:13ID:???
>>892
ahodesune
0895nobodyさん2009/09/05(土) 00:45:28ID:???
お前が考える「ちょっと」ってなんだ?
0896nobodyさん2009/09/05(土) 00:48:54ID:???
>>888 = >>890 = >>892 ?

>>888 みたいにRailsの人格を非難するような人っているよね。
0897nobodyさん2009/09/05(土) 01:01:21ID:???
>>892
まともな開発者ならこの手のマスターデータを定数などにしない。
マスターデータの種類が増えたり変更が入るたびにプログラムの変更が入るから。
「男」や「女」なら増えないと思うかもしれないが、
この絶対に変わらないように思えるデータも「男性」「女性」にしたいなんてことが起こりうる。
「承認待ち」だの「活動中」あたりは言うまでもない。

この手の失敗はDBがここまで使われる前まではよくあって、
それこそ「男」を「男性」に変更するだけで、プログラム修正&追加料金なんてのはザラだった。
さすがに最近はあまりないと思うが。
だからこれはレスどおり「システムの作り方」を勉強すべきなんだよ。
そもそもActiveRecordパターンの目的から完全に外れてるしな。
>>888は「定数」という言葉を間違って使ってるんじゃないかとも思うが。

ちなみに>>893-896はおれではない
0898nobodyさん2009/09/05(土) 02:06:10ID:???
つまり?
0899nobodyさん2009/09/05(土) 04:20:22ID:???
もまえら、UNICODEがらみのRailsのXSS脆弱性きてるからupdateしろよ〜

Brian Mastenbrook: How I cross-site scripted Twitter in 15 minutes, and why you shouldn't store important data on 37signals' applications
http://brian.mastenbrook.net/display/36

XSS Vulnerability in Ruby on Rails - Ruby on Rails: Security | Google グループ
http://groups.google.com/group/rubyonrails-security/msg/7f57cd7794e1d1b4?pli=1
0900nobodyさん2009/09/05(土) 08:56:22ID:???
ぬお
パッチってどうやって当てるんだっけ?
0901nobodyさん2009/09/05(土) 09:19:19ID:???
railsの更新は怖い。
0902nobodyさん2009/09/05(土) 13:33:12ID:AlMjWjcW
>>900
パッチを見て-の箇所はすべて消す。+の箇所は貼り付ける。
人間が手でやるのが一番確実だからきちんと手作業でやろう。
0903nobodyさん2009/09/05(土) 20:37:01ID:???
>>902
あほか。
patch -p1
0904nobodyさん2009/09/05(土) 22:13:08ID:???
人間の手でやるのが一番確実って考えがすごいな
0905nobodyさん2009/09/05(土) 23:01:18ID:WL9xF+Eh
railsアプリの開発の為に、新しいPCを買ったんだけどさ、
(新PCも旧PCも Windows 機)
何でもいいやって感じで適当にrubyインストールして、gemでraisインストールして…、
って感じで環境整えて、いざ開発中のアプリを動作させてみたら全く動作が遅いの。


Completed in 59313ms (View: 40359, DB: 18719) | 200 OK [http://localhost/...]
みたいな法外な速度でさ。

いろんな可能性を考えて、実行環境のバージョン変えたり、ベンチマーク取ったり、
OSを再インストールしたり…、とか3日ぐらい試行錯誤してたんだが、全く改善なし。

んで、ハードウェアに手をつける前に、ふと思いついて、"one-click ruby installer"でrubyを
インストールし直したら、一発で直ったよ…。
新PCで環境作るときに使ってたのは"ActiveScriptRuby"

理由はさっぱり分からないんだが、そういうことって有り得る?
0906nobodyさん2009/09/05(土) 23:32:06ID:???
、と思ったらこんな記事があるな…。

http://74.125.153.132/search?q=cache:TX_nOz2k9hkJ:d.hatena.ne.jp/kusakari/+activescriptruby+%E9%80%9F%E5%BA%A6&cd=2&hl=ja&ct=clnk

ActiveScriptRuby すべてに問題があるわけじゃなさそうだな。失礼。
0907nobodyさん2009/09/06(日) 06:53:37ID:???
>>906
p72 は脆弱性の含まれる旧バージョンですので、実運用には利用しないようにしましょう。

arton さんが別途 p72 を置いてくれています。ActiveRuby-1.8.7-p72.msi
0908nobodyさん2009/09/06(日) 10:54:10ID:???
>> 897
横からすまん。

後から変更される可能性の高いデータならテーブルで
管理するというのは分かるんだが、性別などその可能性
の低いものはモデルに定数として定義してしまってるな。
深い考えがあるわけではなく、感覚的に。

請負とかじゃなくて、自前で開発と運用してるので
プログラムに手をいれるのは比較的容易というのもある。

性別をテーブル(モデル?)にした場合、たとえば
女性のユーザーを検索するときはどんなふうに記述するの?

定数にした場合はこんな感じだよね:
  User.find_by_sex(User.FEMALE)
0909nobodyさん2009/09/06(日) 13:06:46ID:???
性別も、「男」「女」と規定してたら、後で「不明」が必要になった
ことがあったよ。事業譲渡を受けたサービス元が、会員の性別を管理
していなかった。でも、男が0で女が1と定数にしてたから、不明を
2なんて定義するのは影響が大きすぎるので、性別は0なんだけど、
会員IDがこのプリフィックスで始まるときは不明とみなす、っていう
処理を必要なところに入れる、汚らしい解決法を取った。
0910nobodyさん2009/09/06(日) 13:28:59ID:???
ISO の性別使えばいいのに
0911nobodyさん2009/09/06(日) 13:36:19ID:???
不明は未登録だろ。nullでいいじゃんか
0912nobodyさん2009/09/06(日) 13:55:42ID:2yjCPfLR
で、お客さんに会員IDで差別されてるっていわれるんですね。
0913nobodyさん2009/09/06(日) 14:23:30ID:???
>>905-907
本当だ。なんだこれ?

mswin32版のRuby 1.8.7-p160が遅すぎる件 - 那由多屋 開発日誌
http://d.hatena.ne.jp/nayutaya/20090601/1243848756

L'eclat des jours(2009-04-22)
http://www.artonx.org/diary/20090422.html

(コメ欄)
0914nobodyさん2009/09/06(日) 14:29:31ID:???
でかそうなシステムをつくってる人
も結構いるのかな?

RoRのイメージって1,2人で1ヶ月開発ぐらいで
運用開始して、その後継続的にちょこちょこい
じっていくようなスタイルを想像してる。
0915nobodyさん2009/09/06(日) 14:35:46ID:???
2.3.4にはアップデートしたんだけど、2.2.3がないね。
これはまってれば2.2.3がリリースされるの?

皆さんはどうしてんの?
gemでインストールしてるんで直接パッチしたくないんだけど
いい方法ありますか?
アプリが複数ある場合はfreezeするときついし。
0916nobodyさん2009/09/06(日) 17:16:02ID:???
viewで参照したい定数ってどこに置いたらよいの?

application_helperに置いて参照しようとしても、
 uninitialized constant ActionView::Base::CompiledTemplates::DEFAULT_TEXT_AREA_WIDTH
みたいに言われるお…
0917nobodyさん2009/09/06(日) 17:34:23ID:2yjCPfLR
ApplicationHelper::DEFAULT_TEXT_AREA_WIDTHだろ常識的に考えて。
ったくっ!
0918nobodyさん2009/09/07(月) 07:26:47ID:???
railsやるならmac買えば良かったのに
0919nobodyさん2009/09/07(月) 09:33:12ID:???
TextMateでスクリーンキャストするためのMacですねわかります
0920nobodyさん2009/09/07(月) 10:40:05ID:???
>>917
おなじエラーでる(´・ω・`)
0921nobodyさん2009/09/07(月) 14:22:34ID:???
どうやばいか日本語で言わないとアップデートしない日本人が多いはずだ。

XSS Vulnerability in Ruby on Rails
==================================

There is a vulnerability in the escaping code for the form helpers in
Ruby on Rails. Attackers who can inject deliberately malformed unicode
strings into the form helpers can defeat the escaping checks and inject
arbitrary HTML.


0922nobodyさん2009/09/07(月) 17:52:13ID:???
お前らがRailsで作ったサイトにアクセスしたユーザが騙されたり
お前らがRailsで作ったサイトにアクセスしたユーザから情報が盗まれたり
するってことだ
0923nobodyさん2009/09/08(火) 02:30:57ID:hdImoFaT
Rails2.3.4にしたらviewがクソ遅くなった!どうなってんだ??
0924nobodyさん2009/09/08(火) 07:07:52ID:???
http://weblog.rubyonrails.org/2009/9/4/xss-vulnerability-in-ruby-on-rails
http://weblog.rubyonrails.org/2009/9/4/timing-weakness-in-ruby-on-rails

このパッチって git-am 形式ってものみたいだけど、これって Rails 本体を Git から落としてきてパッチ当てて、そのパッチ適用済み Rails と今動かしてるものを差し替え、みたいな事やらなきゃならないの??
誰か簡単な適用手順教えてくれ・・・。
0925nobodyさん2009/09/08(火) 07:21:15ID:???
>>924
リポジトリなしでも、git amコマンドで直接当てられないかな?わからんけど
gitスレで聞いた方がいいかも
0926nobodyさん2009/09/08(火) 07:31:28ID:???
>>924
最初のURLのコメ欄にあるが、普通にpatchコマンドでいけそうだが
0927nobodyさん2009/09/08(火) 08:27:39ID:???
git am形式である以前に単なるunified diff。
0928nobodyさん2009/09/08(火) 08:44:05ID:???
>>927
先頭付近のメール?ヘッダ部分削除してpacheコマンド、って感じでおk?
0929nobodyさん2009/09/08(火) 08:52:15ID:???
http://weblog.rubyonrails.org/2009/9/4/xss-vulnerability-in-ruby-on-rails

ここのコメント欄良く読んでみたら

$ cd vendor/rails $ git apply <name-of-patch>

とか

cd vendor/rails patch -p1 < 2-2-CVE-2009-3009.patch

ってのが載ってるね。
試してみよ。
レス数が900を超えています。1000を超えると表示できなくなるよ。