トップページ⇒php
990コメント286KB

Ruby on Rails のスレ が

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/04/06(日) 04:59:29ID:???
無いのはどうしてだろう?
消えたのか?
流行ってないのか
死亡
0558nobodyさん2008/07/09(水) 18:18:56ID:???
>>557
巣へ帰れ
http://money6.2ch.net/test/read.cgi/venture/1205335287/
0559nobodyさん2008/07/10(木) 12:55:46ID:???
>>558
Rubyに強そうな企業ってことで、KBMJの就職試験受けて落とされたんだけど、
実はブラック企業だったの?
0560デフォルトの名無しさん2008/07/10(木) 19:45:16ID:r5mU74YZ
会員の高野光弘とやらが、非常識な言動をしていることについて、
日本Rubyの会はどう考えているのでしょうか?
0561nobodyさん2008/07/10(木) 20:55:37ID:???
文句があるのなら自分で言え
0562nobodyさん2008/07/11(金) 17:54:05ID:???
controllerでcreateした時に、redirect_to(@item)で飛ばされる先を
変更することって出来ますか?

具体的には、@itemにnameというcolumnがあったときに、
/items/:name
を表示するようにしたいのです。
itemは、id以外にもnameで特定することが出来ます。

たとえば、Wikipediaのように、/wiki/%aa%aa%aa%aa に飛ぶとか、
2ちゃんねるのように /php/1207425569 に飛ぶとかして、idを外に
表示しないようにしたいです。
0563nobodyさん2008/07/11(金) 19:01:33ID:???
そんなしょうもないことを実装するにも方法が分からなきゃ膨大な量のコードを読まされるわけだから堪らんわなあ。
0564nobodyさん2008/07/11(金) 23:08:34ID:???
Item#to_paramでも実装したら?
0565nobodyさん2008/07/12(土) 00:03:39ID:???
>>562
普通に@item.name調べて
redirect_toの引数変えるだけじゃないの?
redirect_toでcontrollerもactionもidも指定できるよ
0566nobodyさん2008/07/12(土) 02:42:07ID:???
wikiみたいにするのも、
routesいじって、contoller側でfindするだけでできる。
0567nobodyさん2008/07/12(土) 06:57:13ID:???
他のところの影響は未調査ですが、>>564 さんのアドバイスで Item.to_param
をオーバーロードしたところ、上手くいきました。
def Item.to_param
name
end

一応、redirect_to(@item)から、named routesのitem_urlが呼ばれるところ
までは調べました。そこで、map.resoucesの中で定義されているmap.itemを
上書きしようとしたのですが、それは上手く行きませんでした。
map.item 'items/:name', :controller=>"items", :action=>:show, :conditions => { :method => :get }

↑ちなみに、:nameには@itemが渡されてきて、最終的には@item.to_paramsで
展開されるようです。

どうもありがとうございます。
0568nobodyさん2008/07/13(日) 15:23:13ID:???

Windows 2003 + Oracle 10g + RoR 2.1.0 を使っています。
RubyはOne Click Installer の1.8.6-26です。

既にOracleに存在する日本語テーブル(項目名も日本語)に
ActiveRecordを使ってアクセスしたいのです。

OracleのLanguageはSJISです。

$KCODE = 'sjis' として

set_table_name 'ほげテーブル'.intern  
とすることで日本語テーブルにアクセスできるようにはなったのですが
テーブルの項目名が日本語の場合でもActiveRecordのクラスから
アクセス出来るのでしょうか?



0569nobodyさん2008/07/13(日) 16:51:25ID:???
Web+DBプレスに英語学習のiKnowがRoRで構築されてるって載ってた
重いと言われるRoRでも
インスタンス増やせばスケールはわりと簡単にできるんかね?
0570nobodyさん2008/07/13(日) 21:04:08ID:BOWtkQ1g
本を見ながら、routes.rbに、
トップページのルートを追加しました
map.connect '', :controller => 'main', :action=>'index'
でも、ドメインのみでアクセスしても、railsのデフォルトのwelcomeページが
表示されてしまいます
webrickを再起動しても同じです
どこが間違ってるのでしょうか?
0571nobodyさん2008/07/13(日) 22:27:09ID:???
index.html消し忘れてんじゃね
0572nobodyさん2008/07/13(日) 23:53:48ID:???
Ruby on Rails とは何を指しているのですか?
0573nobodyさん2008/07/14(月) 01:19:57ID:3TnQyIGU
ails 2.0.2です。FAQだったらごめんなさいです。
URIの構成についてです。

routes.rbに
map.resouces :users
ってやると
/users/:id
が基本的なURIになってしまいますが、
/users/:username
とできるような、おしゃれな方法はありませんでしょうか。
linkt_to @user.name, @user
って書いても/users/:usenameのようなリンクになってほしいです。

RESTful本のようにぐりぐり書くしか無いでしょうか。

よろしくお願いいたします。
0574nobodyさん2008/07/14(月) 01:54:48ID:???
それも to_param じゃねーの?
0575nobodyさん2008/07/14(月) 02:36:01ID:???
>>562

素で聞くが、何も考えずにやればできないか?

redirect_to :action =>"view", :id => item.name

これでは駄目か?ほぼ同等のコードで俺の手元ではうごいている。
0576nobodyさん2008/07/14(月) 08:36:26ID:???
>>575
DRY
0577nobodyさん2008/07/14(月) 11:06:53ID:???
時間の使い方を DRY にする方が良いと思うよw
0578nobodyさん2008/07/14(月) 11:09:17ID:???
modelに無い項目をフォームで入力するのって、どうやるの?
たとえば、dbには、crypted_passwordってあって、フォームではpasswordを
入力させたいような場合とか。
f.text_field :password ってやったら、undefined method `password'って
怒られました。
初心者な質問で、すいません。
0579nobodyさん2008/07/14(月) 20:52:20ID:msCuQYS4
def password=(pw)
@password = pw
end

def password
@password
end

ってモデルに書けばいいんじゃない?
0580nobodyさん2008/07/14(月) 21:09:09ID:7rWN2VbA
ruby on rails 勉強サイト
http://maskana.homedns.org/rails/pro
0581nobodyさん2008/07/14(月) 22:29:28ID:???
>>571
それでした
ありがとうございました
0582nobodyさん2008/07/14(月) 23:33:47ID:Da98iDUF
>>575
ありがとう
そうするしかないかなぁ
0583nobodyさん2008/07/15(火) 03:08:47ID:3loq0Qts
Rails2は、scaffoldでマイグレーションスクリプトが作られますが
マイグレーションスクリプト&テーブル構成を変更して、
それをscaffoldに反映させたい時はどうするのでしょうか?
0584nobodyさん2008/07/15(火) 03:58:58ID:???
そこまでのサポートはなかったような気がするなぁ。

そもそも scaffold は語義通り足場(とっかかり口)として初期自動生成される
ものであって、システムがずっとソレの面倒を見てくれるという位置づけの
モノでもないしね。

0585nobodyさん2008/07/15(火) 04:49:32ID:???
でも1.2まではmodelを元にしてscaffolding作れるじゃん
2.0以降改悪されたってこと?
0586nobodyさん2008/07/15(火) 06:55:50ID:???
>>584 の反撃まだー?
0587nobodyさん2008/07/15(火) 10:22:35ID:???
>>578

f.text_field じゃなくて
text_field_tag のヘルパー使えばよくね?
form_for のなかにも混ぜられるよ。

0588nobodyさん2008/07/15(火) 11:57:33ID:???
railsのスレこれだけ?
困ってるのはログイン状態であることを仮定したコントローラのテスト。
昔はActionController::TestSessionをオーバーロードしてごにょごにょすればできたけど、
今は無理っぽい?
05895882008/07/15(火) 12:15:39ID:???
すまんできたわ
@controller.request.session[:hoge] = "xxx"
とかだな
0590nobodyさん2008/07/15(火) 15:14:05ID:yfmZeFb8
モデルと直接関係ないフォームコントロールの表示とバリデーションて
どうやるの?
0591nobodyさん2008/07/15(火) 15:52:25ID:???
>>590

active_form 入れてみるといいかもしれんね。
0592nobodyさん2008/07/15(火) 23:38:16ID:???
プログラム板にもスレあるよ。つーか、この板って実質PHP板だから。
0593nobodyさん2008/07/16(水) 00:42:51ID:???
>>592
プログラム板にあったのは もうないんでは?
あるの?
0594nobodyさん2008/07/16(水) 00:57:23ID:???
railsは、日本では流行ってないからね
0595nobodyさん2008/07/16(水) 09:11:16ID:MaAMDHMG
passengerってみんなあんまりつかってないの?mongrelよりもいろいろ楽だしもっとさわがれてもいいきがするんだけどな。
0596nobodyさん2008/07/16(水) 10:03:27ID:???
>>595

kwsk!

よさそうだけど情報不足ってとこじゃないかな。
0597nobodyさん2008/07/16(水) 13:00:47ID:ahXuksxu
cakephp使えば生産性が上がるから
ruby覚えてまでrails使う理由が見当たらない
0598nobodyさん2008/07/16(水) 14:14:32ID:???
>>597
ずっとPHPつかってればいいとおもうよ。
0599nobodyさん2008/07/16(水) 15:05:25ID:???
>>595
使ってるよ。趣味でだけど。
自宅サーバでRedmineと一緒に使ってる。

Typoでもいけるかと思ったら、なぜかしばらくすると無反応になるので、
こちらは相変わらずmongrel_railsで起動してる。
0600nobodyさん2008/07/16(水) 15:42:09ID:???
>>595
まだ特定されたわけじゃないけど、passenngerを長く使ってると、メモリ
不足でサーバーが無反応になる気がする。
もしかすると、backgroundrbのせいかもしれんし、rails2.1のせいかもしれん。
mongrel_railsは、ほとんど落ちたことないね。
0601nobodyさん2008/07/16(水) 19:43:37ID:???
新規にpassenger+rails2.1使ったサイトを立ち上げたんだけど、
memory usageのcomittedってのが、異常に増えていくね。
0602nobodyさん2008/07/16(水) 19:52:19ID:???
ちょっとググって見たら、うちもこんな感じです。
で、何週間か経つと、サーバーの応答が無くなります。
ttp://vividtone.seesaa.net/article/93393349.html

メモリ増やせば解決するんでしょうか?
0603nobodyさん2008/07/17(木) 02:27:28ID:UeACUYOm
jpmobileの半角フィルタ、
テーブルに「。」と「。」がないけど
半角「。」が使えない機種とかあるの?
0604nobodyさん2008/07/17(木) 02:46:00ID:???
こっちのほうが早く解決できると思う。
http://jpmobile-rails.org/tickets/new
0605nobodyさん2008/07/17(木) 03:53:25ID:???
不具合出る人はpassengerのバージョンは最新まで上げてる?
backgroundrbと相性が悪いらしいから俺はまだ手を出してないんだが、いずれは主流になるんだろうな
0606nobodyさん2008/07/17(木) 13:55:57ID:???
今時たとえばPHPが落ちるとか聞いたことないんだけど
RoRって落ちるとか落ちないとかそういうレベルなん?
そんなの実戦投入できんの?
0607nobodyさん2008/07/17(木) 15:37:39ID:???
RoRは落ちないけど、passenngerは簡単に落ちる。
mongrel_cluster なら多少、安心。1個2個落ちるときがあるけど、
monitで監視すればいい。
まあ、実践投入すると、twitterみたいに泣きを見るのは確か。
安定性を求めるなら、PHPだね。大規模MediaWikiを導入してるけど、
サーバーが落ちたことは無い。
0608nobodyさん2008/07/17(木) 18:20:17ID:???
RoRがいくら人気出しても
ruby作者がWEBモジュール関係についてやる気出さない限りは無理でしょ
0609nobodyさん2008/07/17(木) 19:24:08ID:???
まぁ、twitterみたいなのはPHPで作っててもダメだったけどな。
ありゃ仕様と運営方法での失敗。
0610nobodyさん2008/07/17(木) 19:59:29ID:???
ORM使ってる時点で高負荷サイトじゃ話にならない。
0611nobodyさん2008/07/17(木) 22:35:09ID:Agu5cuzT
高負荷サイトはGrailsで作っておけ
0612nobodyさん2008/07/18(金) 06:49:27ID:???
もう仕事はpythonとc++だけでいいし、趣味はschemeだけでいいよ。能力が救いようがないほど衰える60歳を過ぎた時、rubyに寄り道したことを悔やみ続ける余生を送りたくはない。
0613nobodyさん2008/07/18(金) 09:04:49ID:AzVXb1qN
負荷が増えたらサーバ追加するとかキャッシュを工夫するとか頑張れる事はあると思うけどね。
0614nobodyさん2008/07/18(金) 12:46:02ID:???
>>613
どのプラットフォームにも言えることだけどね。
railsは、PHPに比べて頑張らなきゃいけないことが多すぎる。
Ruby Enterprise Editionを入れるとマシになるんだろうか?
ちょっと試してくる。
0615nobodyさん2008/07/18(金) 13:56:12ID:???
pythonって関数とオブジェクトが混在してて書いてて気持ちよくない
俺は書いてて気持ちいいからRubyに流れてきたよ
Rubyより書いてて気持ちいい言語ある?
0616nobodyさん2008/07/18(金) 14:52:12ID:???
Saphire
0617nobodyさん2008/07/18(金) 15:08:07ID:???
>>612
60超えてまでこの仕事やるつもりかよ…30超えてやってたら人生終了
0618nobodyさん2008/07/18(金) 17:04:40ID:???
「TwitterはRailsのせいで不安定」という誤情報を頭から消し去ったほうがいい
Twitterなんて今はほとんどRails使ってないんだよ

逆にRails使った高負荷サイトなんていくらでもある
RubyKaigiでも紹介されてたじゃん

確かにPHP等に比べれば「今のところ」負荷対策が面倒なのは事実だけど
0619nobodyさん2008/07/18(金) 17:31:13ID:???
ruby厨必死ww
0620nobodyさん2008/07/18(金) 17:52:59ID:???
一回Ruby的思考に慣れるとPHP触った時のイライラ感が半端ない
ただ文字エンコードの変換はPHPの方が優れている
0621nobodyさん2008/07/18(金) 17:55:29ID:???
>>615
Haskell
0622nobodyさん2008/07/18(金) 18:22:26ID:???
>>618
「Twitterがrailsのせいで不安定」なんて、このスレの住人は思ってない
でしょ。
初期にrailsを採用したせいで、色々「頑張らなきゃいけない」羽目になっ
て泣きを見たんでしょ。

金と人手を掛ければ高負荷に耐えられるなんてのは、当たり前の話で、
railsはキャッシュの面倒臭さやメモリ効率から行って、圧倒的に性能が
劣る(余計なリソースを取られる)ってこと。

まあ、基本、railsにはMatzが関わってないから、将来的な希望は持てる
けど。
0623nobodyさん2008/07/18(金) 21:06:20ID:???
mongrelみたいに開発者がブチ切れなきゃいいんだけどね
0624nobodyさん2008/07/18(金) 21:23:23ID:???
Ruby Enterprise Edition入れてみたけど、あまり変わらない気がするなあ。
面倒なので、ろくにテストもせず、いきなり実戦投入。
EC2のsmallで、30万PVのサイトを運営するのは無理があるかなあ。
0625nobodyさん2008/07/19(土) 00:28:16ID:???
railsのキャッシュの面倒くささって何?
0626nobodyさん2008/07/19(土) 01:04:37ID:???
Railsのデプロイが大変すぎるのでSymphonyに乗り換えようとした事がある
PHPの文法にイライラして無理だった
0627nobodyさん2008/07/19(土) 01:25:25ID:???
デプロイはcapistranoでやってるけど、
結構なコマンドがマシンをまたがって走ってるので
あまりに簡単な実行と相まって、待ってる間、怖くなる。
途中で^Cとか押したら終わりだ。
0628nobodyさん2008/07/19(土) 02:46:23ID:???
>>627
capiの利点てなんぞ?

シェルで賄ってて、特に不満や不安は無いから
いまいち移行する気にならん・・・
0629nobodyさん2008/07/19(土) 04:03:54ID:???
>>628
転んで泣く確立低くなると思うよ。
0630nobodyさん2008/07/19(土) 05:41:50ID:???
Ruby Enterprise Editionだと、メモリ使用量が5%ほど少なくなるね。
最大プロセス数まで起動したときの使用量が多少減った。
でも、CPU負荷が15%ほど上がった気がする。
まあ、Rubyは幸いにしてnaitive threadじゃないので、2個のCPUのうち
1個は丸々空いてるけど。

>>628
何個も同じようなサーバーを用意したり、インストールを何回もするような
場合には必須ですよ。
つまり、EC2を使う場合には離れられない。
MediaWikiもcapiでインストールしてます。
0631nobodyさん2008/07/19(土) 13:34:18ID:???
capistranoを使わない人ってまさか
毎回手動でログインして svn up して再起動とか?w
0632nobodyさん2008/07/19(土) 13:57:58ID:???
>>626
こうなると逆にプログラマーとして劣化してるな
0633nobodyさん2008/07/19(土) 18:39:17ID:???
レコードに大きなデータ(longtextとか)を持ちたいとき、別のテーブルに
すると思います(railsは、デフォルトで全部selectしてくるので)。

でも、なんとなく、
has_one :image
とやったときに、
@item.image.body
とやったり、
has_one :text
@item.text.text
みたいなのが嫌なんですが、何か良い方法はありますか?、
0634nobodyさん2008/07/19(土) 20:47:39ID:???
def image
self[:image].body
end

def text
self[:text].text
end

とか。
0635nobodyさん2008/07/19(土) 21:11:20ID:???
>>625
expire 系で、controller指定できたり出来なかったりとか、
sweeperが効いたり効かなかったりとか、
どのタイミングで消されるか分からないとか、
0636nobodyさん2008/07/19(土) 21:14:34ID:???
>>634
a=Item.new
a.text = ""
ってやると、おかしくならない?
0637nobodyさん2008/07/20(日) 01:48:34ID:/9XaoyQ3
フレームワーク祭りが終われば
RubyがWEB界からおさらばする日も近い。
phpはWEBに特化した言語だからRubyがwebで勝てる訳がない
0638nobodyさん2008/07/20(日) 02:00:58ID:???
あほですか?
PHPこそ滅亡間近なのにそれが分かってないなんて
0639nobodyさん2008/07/20(日) 02:33:19ID:???
Perlから見たら、どっちも滅亡間近に見えるんだろうな。
0640nobodyさん2008/07/20(日) 02:49:26ID:???
rubyは俺もブームだけで終わるような気がする。
たいていのウェブアプリはPHPで十分で、rubyはPHPより記述性が高いとは言っても、それは大きなメリットにはならない。
ウェブ以外の分野って考えても、ツール系のなら、PerlかPythonがある以上、rubyの出る幕はない。
0641nobodyさん2008/07/20(日) 03:39:23ID:???
今Perl→Rubyの移行してるんだが、
0642nobodyさん2008/07/20(日) 03:41:54ID:???
スマネShift+Enterおしてしもうた・・・

Perlはやっぱり早い。
Rubyに比べると読みづらいが、速度ではRubyは勝てないだろうな。
0643nobodyさん2008/07/20(日) 03:43:41ID:???
Pythonはあっても、Rubyはないよ。Perlが読みづらいって、Rubyも同じように読みづらいから。基本的にPerlのパクリだから。
0644nobodyさん2008/07/20(日) 04:06:52ID:???
PythonもRubyと同じような感じだよね^^
0645nobodyさん2008/07/20(日) 07:31:43ID:???
PerlやRubyはPHPの研究開発部門だよ
おいしいところはPHPが全部いただき!
0646nobodyさん2008/07/20(日) 07:34:35ID:???
google app engineに採用された時点で、pythonの勝ちだろ
0647nobodyさん2008/07/20(日) 10:47:52ID:???
>>633
Rails2.1で改良されてなかったっけ?
勘違いだったらごめん

>>646
それはGAEが勝つというのが前提だよな? でもGAEはなりもの入りで発表されたが、いまいちぱっとしない。
0648nobodyさん2008/07/20(日) 12:20:25ID:???
なんだ、まだ言語に拘るヤツが居るのか。

どの言語も読みやすさ、書きやすさは慣れじゃね?


手段や手法に拘るのは愚の骨頂だと思うんだ。
0649nobodyさん2008/07/20(日) 14:49:26ID:???
アクションと普通のメソッドをpublicとprivateで分けてるけど
actionに_actionっていうポストフィックス付けて名前空間管理すればいいのに
なんでしないんだろ?
あほなの?
0650nobodyさん2008/07/20(日) 15:05:04ID:???
いや、天才
0651nobodyさん2008/07/20(日) 15:07:19ID:???
じゃあなんでしないの?
0652nobodyさん2008/07/20(日) 15:13:05ID:???
じゃあ、あほだからでいいよ。
0653nobodyさん2008/07/20(日) 16:16:04ID:???
prefixの対義語はsuffixな。
0654nobodyさん2008/07/20(日) 16:19:08ID:???
演算子の書き方だと prefix, postfix, infixだな。
0655nobodyさん2008/07/20(日) 17:39:11ID:???
どっちがあってんの?
0656nobodyさん2008/07/20(日) 18:14:13ID:???
>>647
こういうこと?
動かないよ。

class Item < ActiveRecord::Base
has_one :image
has_one :body, :through=>:image
end
0657nobodyさん2008/07/20(日) 21:17:46ID:???
newrelicってどうよ?
■ このスレッドは過去ログ倉庫に格納されています