[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 04/04 11:44 / Filesize : 240 KB / Number-of Response : 968
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Ruby on Rails



1 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 12:18:26 ]
Ruby on Railsスレ
みんな語ろう。

511 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 20:26:52 ]
>>497
誤植が多いとなおさら初心者に悪くねーか?

512 名前:デフォルトの名無しさん [2008/02/07(木) 20:33:11 ]
リダイレクトってどうやったらできるの?

513 名前:デフォルトの名無しさん mailto:sage [2008/02/07(木) 20:35:53 ]
何を何にリダイレクトしたいんだ?

514 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 00:54:58 ]
>>511
それは否定できない
真剣に読んでれば誤植かどうかわかるんだけど(Amazonレビューでも書いてた
Rails+Rubyの基礎本としては他にイマイチ選択肢が無いんだよな


515 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 09:22:19 ]
>514
エラッタがあったのでオイラはこれ印刷して手元においているYO

基礎Ruby on Rails | 正誤表 - 株式会社 オイアクス
www.oiax.jp/books/kiso_rails/errata.html

基礎Ruby on Rails | 読者サポートページ - 株式会社 オイアクス
www.oiax.jp/books/kiso_rails.html

516 名前:デフォルトの名無しさん mailto:sage [2008/02/08(金) 18:34:17 ]
>>510
> =begin
> =end
>
> これのコメントアウトってバグってますよね?
どういう意味?
何が、どういう風に動くべきだと思ってて、
実際にはどんな風にうまく動かないの?


517 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 09:21:43 ]
>>516
RailsのバグじゃなくてあくまでIDEの話です

複数行をコメントアウトしたくて該当の記述をした途端に、RadRailsの挙動がおかしくなる

うまく表現できないんだけどエディタが壊れるというか…とにかくまともに動作しなくなる。該当の記述を消すと元に戻ります

518 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 13:58:47 ]
RadRails 0.9.3.6479 だけど、普通にコメントアウトできるよ。
前のバージョンだと自分も begin end 形式のコメントアウトが
できないことがあった。

519 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 17:08:16 ]
active_scafolld で関連を設定したとき edit 画面で出るサブフォームのカラムの順番はどうやったら設定できるんでしょうか?



520 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 21:23:28 ]
>>518
バージョンは同じですね
aptanaのバージョンによっても変わるのでしょうか
aptana単独版でもEclipseプラグインでもバグってます

Rails用IDE使ってる人自体が少ないんでしょうかね
これとかどうなんだろ
ttp://webos-goodies.jp/archives/51287729.html

521 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 22:46:06 ]
>>520
しろうとの適当回答で悪いが、
=begin =end は「コメントアウト」ではなくて「埋め込みドキュメント」というみたい。
=begin と =end は行頭から書かないとだめ(インデントしてはだめ)なのかもしれない。

エラー表示が「multine comment ...」だったらこれが原因じゃないかな。

522 名前:デフォルトの名無しさん mailto:sage [2008/02/09(土) 23:50:57 ]
Railsで再構築したぜ
ttp://www.momoiro.jp/


523 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 02:09:25 ]
>>522
エロサイトの宣伝は珍しいな。
Railsには見えんが・・・
built width で鯖構成しらべようとしたら、403ではじかれた('A`)

524 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 12:47:30 ]
>>523

ttp://www.momoiro.jp/bbs/list


525 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 13:09:26 ]
ワラタw

526 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 13:32:19 ]
Application error (Rails)
ワロッシュ

527 名前:店長 mailto:sage [2008/02/10(日) 17:11:41 ]
す、すいません!

今、ほむぺのリニューアル中なんです。。。

(Rails) を見たといってくれれば半額にしますので
よろしくおねがいします!!!



528 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:30:01 ]
ほむぺ(R) は、(株)SRAの登録商標(登録番号4905533)です。

529 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:42:02 ]
>>527
「Railsみました〜」って言ったら、「は?なにいってんの?」って言われたよ。ウワァーン



530 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 18:49:11 ]
ネタにしては面白くないな。
本当だったらアレだな。

531 名前:デフォルトの名無しさん mailto:sage [2008/02/10(日) 19:27:55 ]
Railsみましたwwww

532 名前:デフォルトの名無しさん [2008/02/10(日) 22:00:32 ]
かんたんRuby on Railsの本を読んでいるけど
どうしてもcreate_tableができん
なんでだろ

533 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 00:49:00 ]
エラー見ないと答えようがないが、DB作ってないとか。
(sqliteなら作らなくても○)


534 名前:デフォルトの名無しさん [2008/02/11(月) 11:27:44 ]
どうしてsqliteなら作らなくてもOKなの?

535 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 13:15:58 ]
ファイルベースだから。
dbfile に設定した名前のファイルがなければ勝手に作ってくれる。

536 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 14:14:18 ]
他のはDB作成コマンド発行してユーザー作って権限設定してどーのこーのが必要。
最近はrake db:createとかいうタスクもあった気がする。


537 名前:デフォルトの名無しさん [2008/02/11(月) 15:32:39 ]
rakeってなに?

538 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 15:51:50 ]
ググれk

539 名前:デフォルトの名無しさん mailto:sage [2008/02/11(月) 21:40:41 ]
json v1.1.2ってWindows環境は対応してないの?



540 名前:デフォルトの名無しさん [2008/02/11(月) 22:45:47 ]
railsむずかCーーーーーーーーーーーー

541 名前:デフォルトの名無しさん [2008/02/11(月) 22:46:08 ]
民主党・公明党が主導する在日参政権はこんなに危険!!

・在 日 コ リ ア ン は 強 制 連 行 さ れ た 人 で は な い ! ! 出稼ぎ者が99,999999パーセント!!
・指定暴力団員の30パーセントが在日コリアン!!
・パチンコ屋経営の80〜90パーセントが在日コリアン!!
・掛け金なしで年金受給!!
・莫大な数の生活保護受給!!
・在 日 コ リ ア ン は 「 慰 安 婦 2 0 万 性 奴 隷 」 を 捏 造
・日 韓 併 合 時  の 数 々 の 「 日 帝 の 蛮 行 」 を 捏 造
・歴 史 教 科 書 に 介 入 し 歴 史 を 捏 造
・北朝鮮拉致に協力・加担(北と南で国籍は簡単に変えられる)

・韓 国 の 参 政 権 を 持 っ て い る 日 本 人 は 「 5 1 人 」
 日 本 に い る 在 日 韓 国 人 は 「 6 0 0 0 0 0 人 」以 上 !!

542 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 07:59:50 ]
>>541
売国奴氏ね

543 名前:デフォルトの名無しさん [2008/02/12(火) 21:56:14 ]
ブラウザでRails開発が完了する衝撃の簡単さ
Herokuを使えば、Railsの開発をブラウザだけで行うことが可能

ttp://builder.japan.zdnet.com/news/story/0,3800079086,20366959,00.htm
ttp://heroku.com/

544 名前:デフォルトの名無しさん mailto:sage [2008/02/12(火) 21:58:40 ]
ほのぼのrake。

545 名前:デフォルトの名無しさん [2008/02/13(水) 14:47:11 ]
複数テーブルをいっせいに同じページに表示する方法おちえてください

546 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 15:29:11 ]
>>545
もちっと具体的に。

547 名前:デフォルトの名無しさん mailto:sage [2008/02/13(水) 16:26:37 ]
>>545
コントローラー側で各テーブルをfindして
それぞれテーブル毎に@変数に格納して
ビューで展開・表示する事?

548 名前:545 mailto:sage [2008/02/14(木) 15:12:16 ]
たとえばコントローラで
def index
@as = A.find(:all)
@bs = B.find(:all)
end
って入れて、ビューで展開しようとしたら、

uninitialized constant hogehogeController::B

って出るんです。なにがいけないのでしょうか。。

549 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 15:48:53 ]
>>548
modelにBのファイルが無いというオチじゃなかろうな?



550 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 17:14:00 ]
もしくはBがSTIしてるとか

551 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 18:15:13 ]
STIってなんですか?

552 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 18:17:53 ]
単一テーブル継承

553 名前:デフォルトの名無しさん mailto:sage [2008/02/14(木) 21:19:05 ]
なるへそ。

554 名前:545 mailto:sage [2008/02/14(木) 22:36:05 ]
>>549
まさにそういうオチでした。。
ありがとうございます。でなおしてきます。

555 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 12:53:48 ]
>>549が素敵w

556 名前:545 mailto:sage [2008/02/15(金) 15:58:18 ]
恥をしのんでもう一つ質問させてください
複数テーブルの同画面表示・更新はおかげさまで成功。
こんどはAJAXでリアルタイムに画面上で更新できるようにしたいんですが、
修正対象のテーブルの行だけリフレッシュするところでうまくいきません
なにか参考になるサンプルコードとかないでしゅおか?
あたまわるくてすみません

557 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 16:57:31 ]
tablekit.js

558 名前:545 mailto:sage [2008/02/15(金) 17:08:32 ]
見てみました。
でも更新対象はセルじゃなくて「特定のテーブル」なんです。
例えるなら同じ画面に掲示板を5つ出してるようなイメージです

559 名前:デフォルトの名無しさん mailto:sage [2008/02/15(金) 21:48:04 ]
tableにid張っておいてAjax.updateすりゃいいんじゃないの?




560 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 00:22:49 ]
行だけは難しいかもしれんね。
色々やってみたことあるけどIEとFirefoxで挙動違ったりで怪しかったんで、
結局セルの中に別途id振ったりしたような覚えがある

561 名前:545 mailto:sage [2008/02/16(土) 15:31:02 ]
う、むずかしいんですか…
自分の場合はID振る段階とか、
もっと単純なところで躓いてる気がしますが。。

ちなみにテーブルの数だけ
リスト(list)とリスト一行追加(add_list)のview用意して
ごっそりrenderするって認識は間違ってませんか?

562 名前:545 mailto:sage [2008/02/16(土) 15:40:21 ]
あ、しまった違う
add_listなんていらんよね。。

563 名前:デフォルトの名無しさん [2008/02/16(土) 15:48:32 ]
轢死 on rails

564 名前:560 mailto:sage [2008/02/16(土) 18:09:46 ]
俺のはtrタグやtdタグにid振ってもブラウザによってうまくいったりいかなかったりって話ね

565 名前:デフォルトの名無しさん mailto:sage [2008/02/16(土) 20:41:20 ]
行だけってのはあれなので、
でかいテーブルじゃなければ、
divに入れて、テーブルごと書き換えちゃうのが楽だと思う。

566 名前:デフォルトの名無しさん mailto:age [2008/02/22(金) 06:06:01 ]
age

567 名前:デフォルトの名無しさん mailto:sage [2008/02/22(金) 10:28:20 ]
sage

568 名前:デフォルトの名無しさん [2008/02/22(金) 23:41:51 ]
IISでRails動かしている人っている?

569 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 13:26:27 ]
おれおれ



570 名前:デフォルトの名無しさん [2008/02/23(土) 14:45:21 ]
IEはtableのTRに対して更新は掛からないはずです。
行単位でかけるんじゃなくて、テーブル全体で更新するしかないと思います。
もしくはtableじゃなくて、divでテーブルレイアウトするとか。


こちらもご参考に
blog.asura.co.jp/takehara/97683399bd444c33922ecafb6e1377c7/entry.aspx

571 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 15:40:26 ]
ActiveRecordで"ノート"テーブルと"ページ"テーブルがあるとして、
ノート.new("title" => "さんすう")で1レコード増やして、
ノート.page[0].text = "きょうのテーマはたしざん"
ノート.page[1].text = "きょうのテーマはひきざん"
ノート.page[2].text = "きょうのテーマはかけざん"
ノート.save

みたいなことやると
"ノート"に title = さんすうなレコードが追加されてて
"ページ"に title = さんすう, page = 0, text = きょうのテーマは…みたいなレコードが3件できてるー

みたいなことってできる?
has_manyとかhas_oneとか指定すればいいのか?

572 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 17:03:45 ]
できるよ。
has_manyとかhas_oneとか指定すれば

573 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 19:07:14 ]
ノート.pages.build(:text => "ほげ")

ノート.pages.create(:text => "ほげ")



574 名前:デフォルトの名無しさん mailto:sage [2008/02/23(土) 19:54:41 ]
3rd Rail糞使いにくい
絶対買わないほうがいい

575 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 06:12:28 ]
>>574
mjsk
CodeGear涙目w

576 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 09:28:51 ]
軽くて使いやすいIDEはないものでしょうかねぇ。

577 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 11:55:50 ]
Nebeans 6はIDEの中では割と軽いし使いやすいと思うけど。
特にruby/railsプラグインだけのやつなら起動の時間が短めで良い感じ。
逆に全入りとかのをダウンロードすると、起動にすごく時間がかかるんで注意。

578 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 12:01:54 ]
eclipseのプラグインはありますか?

579 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 12:45:45 ]
検索もしない奴は死ねばいいと思うよ。



580 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 18:53:01 ]
Railsやるならvimかemacsかtextmateしかないだろ常識的に考えて

581 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 20:45:23 ]
Windows環境でおながいします

582 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 20:48:17 ]
RailsやるならWindowsだけはないわ

583 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 21:56:52 ]
>> 578
Aptana RadRailsがeclipseベース
ttp://www.aptana.com/rails/

584 名前:デフォルトの名無しさん mailto:sage [2008/02/24(日) 22:00:56 ]
どうしても本番機はLinuxとかになるからね。

Windows+Aptanaとかで最初開発してたけど、
途中からもう無理ってことで
(サーバの分散とかやることになって、同じ環境がWindowsで作れなくなった)
Linux(or Mac) + vi, emacs に全員移行した。


585 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 00:11:50 ]
>>584
VMwareServerとかVirtualPCとかじゃダメだったん?
ま、メモリ2GBくらいないとキツそうだが……。

586 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 00:44:21 ]
>>585
支給されてるマシンがThinkPad X60なんで、
各マシンでVMwareは重くてストレスたまる。
Linuxサーバ(をさらにVMwareで仮想化)にPuttyとかで繋ぎに行く事になった。
Macの場合はそのまま自分のマシンで開発。

587 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 00:50:36 ]
coLinuxはかなーり軽いと思うが。


588 名前:デフォルトの名無しさん mailto:sage [2008/02/25(月) 08:58:00 ]
Linuxマシン用意できるんなら、Windowsで無理しながら使う意味はないな。

589 名前:デフォルトの名無しさん [2008/02/26(火) 02:46:34 ]
Rails板ってここだけ?



590 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 03:04:24 ]
うん

591 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 03:12:58 ]
Webprog板は追い出された。あそこはurlからしてPHPだしね

592 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 08:45:00 ]
RailsPlaygroundで環境構築できた人いる?
かれこれ24時間はハマッてるんだが・・
FastCGIが有効じゃないっぽいんだよね
中身がそのまま表示されちゃう

593 名前:デフォルトの名無しさん mailto:sage [2008/02/26(火) 17:14:38 ]
>>589
Railsスレな。


594 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 03:02:16 ]
国内でRails環境作るとしたら専用のみ?
生CGIは避ける前提なら

595 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/02/27(水) 07:29:06 ]
>>594
RailsってDB周りのAPIが共有サーバを前提として無いからね。
アプリごとにDBを作れることが前提になってたり。

クイックハックで1つのDBにプリフィックス付けて使うようにできれば共有サーバでもそんなに
不便しないのだけど。

そのへんの制限つきでいいなら、ロリポやさくらでもいけるけど、現実には実行環境のレスポンスがクソ悪い。
ApacheでCGIとして動いてるからね。FastCGI以上の高速実行環境がないと辛い。

まあ、いっそ自宅鯖でも考えたほうがいいかもね。

596 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 09:01:03 ]
>> 594
国内のVPSもありますよ。
でもRailsアプリをホスティングするなら、絶対海外が良いと思うけど。
値段が違いすぎるよ。

>> 595
>アプリごとにDBを作れることが前提になってたり。

Schemaを変えれば良いだけでは?
もしくはsqliteでやるとか。

597 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 10:22:04 ]
ActiveRecord::Base.table_name_prefix

598 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 15:50:24 ]
お前らが使っているRails用の安価なVPS教えてください。海外OK

Railsくらいになると、専用サバか自宅鯖が多いんかな

599 名前:594 mailto:sage [2008/02/27(水) 21:41:31 ]
RailsがサクッとXreaで動いてくれれば嬉しいんだけどな
海外鯖は確かに安いけど情報少なすぎて困る
webアプリの知識はあってもサーバーの知識が無いわけよ・・
だからVPSは周りに迷惑かけそうで躊躇してる

ちなみに>>592も俺
RailsPlaygroundはRailsが動く海外共用低価格サーバーとしては有名っぽい
結局まだ動かせてないけど



600 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 23:06:23 ]
今ならdreamhostじゃない?

Xreaは過去に動かしてけど負荷が高すぎるんで止めたくさい。


601 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 23:19:04 ]
×情報が少なすぎる
○英語を読もうとしない

602 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/02/27(水) 23:20:41 ]
>>597
そんなのいつの間に付いたんだ。
まあどのみちそこらの共有サーバじゃ絶望的に遅いですよ、と。

603 名前:デフォルトの名無しさん mailto:sage [2008/02/27(水) 23:52:25 ]
>>600
dreamhostは重過ぎるらしい
静的HTMLに留めておくのが無難みたいな記事をよく見る
fastCGIがイマイチ動かないらしい

>>601
読もうとしないんじゃない読めないんだ
最近は読む努力をしている


Railを動かす選択肢をあげてみる
・専用サーバ
・国内VPS
・海外VPS
・海外共用(FastCGI有)

604 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/02/28(木) 00:18:14 ]
まあFastCGIがなかろうとMongrelが常駐できさえすれば劇的に変わるんだけどね
mod_rubyがあろうとなかろうと素のApacheは論外

605 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 03:15:34 ]
まぁ、そろそろレンサバ板いこうぜ。
VPSプランってどうよ?3
pc11.2ch.net/test/read.cgi/hosting/1169682422/

606 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 17:54:27 ]
>>605
気持ちはわかるけど、そんなに話題も無いし別にいいんじゃないかな
Railsの場合PHP等に比べて安価な環境構築が難しいし
サーバーの話は定期的に出ると思うんだ

607 名前:デフォルトの名無しさん mailto:sage [2008/02/28(木) 18:05:05 ]
情報が分散したり同じ事繰り返すのもアレだしここでやんなくても良いと思うけど

608 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 02:19:59 ]
複数のRailsアプリでセッション情報を共有するにはどうすればいいでしょうか?
アプリは同じサーバーにある前提です


609 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 09:51:37 ]
セッション保存する場所を共有すりゃいいんじゃね?



610 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 11:04:14 ]
sessionをDBにいれて
establish_connection指定でそのDBを見に行けばOK。

611 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 21:35:02 ]
>>609,610
ありがとう!
下を参考に自作モデルを複数DBに対応するのは出来た
ttp://blog.livedoor.jp/sparklegate/archives/50376930.html

でもsessionテーブルに対応するやり方がどうもわからない
CGI::Session::ActiveRecordStore ← この辺りごにょごにょすればいいのだろうか?
ちなみに1.2.6です

612 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 22:34:14 ]
>>611
config/environments.rbの
# config.action_controller.session_store = :active_record_store
のあたり。テーブルの作り方も上にコメントで書いてある。



613 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 22:46:47 ]
>>612
ごめん書き方が悪かった
sessionをDBに格納するのはできたんだ

でも610が書いてくれてるestablish_connectionをactive_record_storeに対応させるやり方が難しくて
自作のモデルになら適用できたのだけど・・

614 名前:デフォルトの名無しさん mailto:sage [2008/02/29(金) 23:11:23 ]
使われるSessionクラスはCGI::Session::ActiveRecordStore::Sessionで、
CGI::Session::ActiveRecordStore::Session < ActiveRecord::Base
だったりするので
CGI::Session::ActiveRecordStore::Session.establish_connection(...)
でいけるんじゃない?


615 名前:デフォルトの名無しさん mailto:sage [2008/03/01(土) 01:20:54 ]
>>614
CGI::Session::ActiveRecordStore::Session.establish_connection(...)を
ApplicationControllerに書いてみたら見事に外部DBにsession情報を置けた

しかしなぜかcookieのsession_idが毎回書き換わってしまう
解決したら方法書きます
アドバイスありがとう!

616 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 04:58:52 ]
直前にMySQLへauto_incrementで挿入されたレコードのidを取得するにはどうすればいいんだろうか

RailsAPIにlast_insert_idってのがあるけどMySQLでは使えないらしい
それならばと直SQLを発行したけどNULLで返ってくる
これって途中でセッションが一度切れてるのかな?

617 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 05:09:57 ]
ごめん直SQLでいけた
SQL発行せずにスマートにできる方法がMySQLにもあればいいんだが

618 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 08:25:49 ]
>>616
試してないけど、after_createやafter_saveでできそうな気もする。


619 名前:デフォルトの名無しさん [2008/03/03(月) 12:40:15 ]
プロクレーマー「ジャッジ金子」

news23.jeez.jp/img/imgnews16545.jpg




620 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 13:04:15 ]


621 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 00:10:00 ]
Rails2.0.2のbutton_toってバグってねー?
link_toだと思ったとおりになるんだがbutton_to
だと動きがおかしくなる。
indexに戻ろうとしてもshowにいったりとかアクション違ったりとか。
何言ってるかわからんかもしらんが何かおかしい。

622 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 01:46:20 ]
出力されたhtmlを確認すればよいんじゃないかな、ボケ

623 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 06:57:13 ]
formが入れ子になってたって落ちだろ

624 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 21:51:27 ]
tbl_a
id
name
hoge

tbl_b
name
fuge

select tbl_a.name, tbl_a.hoge tbl_b.fuge from tbl_a inner join on tbl_b
tbl_a.name = tbl_b.name

これをARでやるとどうやるの?

class TblA < ActiveRecord::Base
has_many :b
end

class TblB < ActiveRecord::Base
belongs_to a
end

ret = TblA.find

このあとどうすればいいの?お前ら日本で一番RR解ってる
博識ばかりらしいからささっと教えてくれよ

625 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 22:39:44 ]
そのtableのつくりじゃAR使えないよ。

626 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 22:46:15 ]
class TblA < ActiveRecord::Base
has_many :bs, :class_name => "TblB", :foreign_key => "name"
end

class TblB < ActiveRecord::Base
belongs_to :a, :class_name => "TblA", :foreign_key => "name"
end

ret = TblA.find
ret.bs.each do |b|
puts b.fuge
end

627 名前:デフォルトの名無しさん mailto:sage [2008/03/05(水) 23:41:36 ]
>>626
それで取れたのですが

次に
select tbl_a.name, tbl_a.hoge tbl_b.fuge from tbl_a inner join on tbl_b
tbl_a.name = tbl_b.name

where tbl_a.hoge = "xxx" and tbl_b.fuge = "yyy"

というwhere句がついた場合
現状のARだと、

ret = TblA.find(:condition[...]
ret.bs.each do |b|
puts b.fuge
end

取得結果は、一番最初に検索されたレコードになるんですけど
仕様ですかね?


628 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 00:38:32 ]
ちっとは調べろカス

629 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 01:52:52 ]
rake rails:freeze:gemsやると以下のエラーになる
uninitialized constant Gem::GemRunner


ttp://d.hatena.ne.jp/bottleneck/20080112/1200135756
で、ここで解決法を見つけたんだが「/usr/bin/gem」がいじれない環境だとどうにもならないんだろうか?



630 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 03:55:19 ]
>>629
自己解決しました
rake rails:freeze:edge TAG=rel_1-*-* でいけた

631 名前:デフォルトの名無しさん mailto:sage [2008/03/06(木) 07:53:08 ]
はまってるんで誰か教えてくださいorz
vendor/railsの中に1.2.6環境を入れて使いたくて>>630の事をやった
そうすると、
/home/〜省略〜/script/../config/../vendor/rails/railties/lib/initializer.rb:1:in
`require': no such file to load -- logger (LoadError)
見たいなエラーが至るところで見られるようになった
pathが通ってないみたいだけど、どこで通せばいいんだろう?
environment.rb内でもなさそうだし・・

ちなみにvendor/railsを使わないほうが動きが明らかに速いっぽいですね

632 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 17:28:50 ]
mongrel でアクセス拒否ってどう設定すればよいでしょうか?
ユーザエージェントが libwww-perl のものをはじきたいのですが.
よろしくお願いします.

633 名前:デフォルトの名無しさん [2008/03/09(日) 17:43:43 ]
rhtmlにコメントを書き込みたいんだが、
実際には出力しないコメントを書くにはどういう記述をすればいいのでしょうか?

634 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 18:19:33 ]
質問です
/home/username/prog/hoge といrailsアプリケーションを作りました。
/home/username/prog/hoge で ruby script/server -e production でWEBrickを起動すると
example.net:3000/ でちゃんと動作しています。

これを、apacheでfastcgiを使って example.net/~username/hoge で動かしたいと思い、
ln -s /home/username/prog/hoge/public /home/username/public_html/hoge
とやって、.htaccessに
SetEnv RAILS_ENV production
RewriteBase /~username/hoge
RewriteRule ... dispatch.fcgi [QSA, L]
を設定しました。

この状態で上記のuriにアクセスしても
Application error
Rails application failed to start properly
となるんですが、どこをチェックすれば良いんですかね?

OSはFreeBSD
www/fcgi www/mod_fastcgi www/ruby-fcgi はportsからインストールしました

635 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 18:41:34 ]
>>632
mongrelにはそういう柔軟な設定はなかったような。
表にApacheとかの設定可能なWebサーバをProxyに立ててmongrelにとばすか、
アプリ側のbefore_filterでUAを見ることになると思う。

>>633
<%# ... %> で間に合う?

>>634
RAILS_ROOT/log/ にapacheさんやnobodyさんがログを書けなかったとか。


636 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 18:57:52 ]
>>635
書けるようになってます
1度だけ(なぜ1度だけなのか分からないけど) fastcgi.crash.log も書かれています

ちなみに、.cgiでやってみたところ、/var/log/http-error.logの方に、
config/environment.rb で require 'lib/zzz' してるzzz.rbが見つからないと出ていたので、
require '/home/username/prog/hoge/lib/zzz' に変えてみたところ、そのエラーは出ませんでした。
なんかこの辺の lib/zzz が見つからないというのも怪しい気がします。
.htaccess に SetEnv RAILS_ROOT /home/username/prog/hoge と設定してみても同じです

637 名前:633 [2008/03/09(日) 20:01:33 ]
>>635
ありがとう!
特にそういう記述はないんですね。

638 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 21:48:43 ]
Railsおもしれ〜便利機能が多々あってワクワクするお

639 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 21:54:40 ]
>>636
config/environment.rbの
require File.join(File.dirname(__FILE__), 'boot')
が評価される前は $: に lib は入っていないのだが、見つからないという
ライブラリはどのタイミングでロードしてる?




640 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 23:42:53 ]
>>639
一番最後
Rails::Initializer.run do |config|
end
のあとです


railsで作るの初めてなのでどうデバッグして良いかわかりません
ここでinclude_pathにlibが含まれているか確認するにはどうすればいいのでしょう
phpならvar_dumpでもなんでも適当にやれば適当な結果が得られるんですが

641 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 01:59:47 ]
あー

%irb
irb(main):001:0> require 'fcgi'
Fatal error 'Thread is not system scope.
' at line 319 in file /usr/src/lib/libpthread/thread/thr_sig.c (errno = 2)
Segmentation fault (core dumped)


ruby-fcgiがだめっぽいです
いろいろ試してまた質問します

642 名前:634 mailto:sage [2008/03/10(月) 20:48:05 ]
fcgiの問題が解決しました。
どうもFreeBSDにデフォルトで入っているrubyはpthreadが使われていてこれがダメらしく、
portsからrubyを入れ直すことでfcgiのコアダンプはなくなりました。

requireの問題は解決していないのですが、full pathで書くことで一応起動はするようになりました。

643 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 21:20:29 ]
migrationで初期データを登録すると、developmentだとちゃんと登録できてるのに
rake specだとデータが入らないんだけど、何でだろう?
空のfixturesで上書き&消去されてるのかと思って調べたけど違うっぽい・・・
なぜ?

644 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 21:27:18 ]
migrationスクリプトが走るんじゃなくて、db:schema:loadあたりで
データベース構造だけtest環境に複製されるんだと思う。


645 名前:デフォルトの名無しさん [2008/03/10(月) 22:45:40 ]
localhost:3000/にトップページをおきたいんだけど
どうしたらいいの?

646 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/10(月) 23:07:14 ]
環境は何よ?

Webrickなら簡単だけど

require 'webrick'
server = WEBrick::HTTPServer.new({
:Port => 3000,
:BindAddress => '127.0.0.1',
:DocumentRoot => '公開したいディレクトリ'})
trap('INT') { server.shutdown }
server.start


647 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 23:13:41 ]
>644
てことは、やっぱりfixtureが必要ってことかな?
そうするとdevelopmentにdb:fixtuers:loadしたときに衝突しそう

648 名前:デフォルトの名無しさん [2008/03/10(月) 23:34:39 ]
自身の都合でRubyの国際化にあんまり興味なさげな鬼車の作者を巻き込んでおいて
それをサポートするどころか鬼車作者の気遣いを無下にする最新バージョン無断組み込みとか
見当違いの鬼車作者批判とか(Unicode結合文字を1文字として扱わないのは悲しい呼ばわり)
作者の立場だったら俺だって絶対キレるよこれ、なにこのまつもとの態度・・・

649 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/10(月) 23:36:42 ]
ここで言うな。

清美たん、いいかげんWin32スタティックライブラリで関数インポートテーブル作らないようにしてください。



650 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 01:32:07 ]
>>634
なんでlibとか入ってるんだろうか
俺もpathについてはよくわからんが
もしrails/vendor配下にRails入れて運用してるなら
/vendor/rails/railties/lib/initializer.rb
にlibへのpathを書いたらどうですか?

あるいはSSHでecho $PATHを見てみる
で、libへのpathが通ってなかったらbash_profileに書いてみるとか
俺もよくわかってないんで適当だけど一応

651 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 02:16:21 ]
>>650
PATHはシェル上でコマンド検索が行われるディレクトリ。
rubyのライブラリが検索されるのはRUBYLIB。


652 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 07:42:13 ]
>>650
なるほど
ちなみに共用サーバーでライブラリが入っているディレクトリを調べる方法はあるでしょうか?
自分631なんですが未だに解決しなくて右往左往してまして
/usr/bin/ruby/1.8/
/usr/local/lib/site_ruby/1.8/
適当にこの辺に通してみたのですが違うようです

653 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 07:43:02 ]

アンカー間違えました。>>651でした

654 名前:デフォルトの名無しさん [2008/03/11(火) 20:55:27 ]
html表示する文字の色を変えるにはどうしたらいいですか?

655 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 22:09:27 ]
はいはいググレカス。スレ違いも甚だしい。


ところで、もっとRails自体についてちゃんと語るスレって他にないのかな?
本気でRailsの未来に不安を感じてきた。

656 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 22:30:01 ]
ここでいいよ。


657 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 10:14:51 ]
>>655
じゃぁ言いだしっぺのお前がネタ投下頼む

658 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 11:30:26 ]
>>655
気持ちはわかるけど誰も話題を提供しないんだよな
つーか個人的にはRails質問スレがあると嬉しい
聞くところが無いんだよな・・誰か作ってくれ

で、話題だけどさ、Wavesってどうなんだろうな
ttp://www.infoq.com/jp/news/2008/03/waves-ruby-framework
こうやって別のFWが出てくることによってRailsが今後どうなるのか気になる

659 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 11:31:37 ]
ここで質問すりゃいいだろ



660 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 16:23:57 ]
>>659
655の人?

661 名前:デフォルトの名無しさん [2008/03/12(水) 20:40:41 ]
>>646
その設定ってどこに書いてあるの?

662 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 22:10:11 ]
>>658
競合するものが出てくるのはいいことだけど、WavesもRamazeとかも
まだ、その域に達してないように思う。
今はRails一強だから逆にヤバいよ


663 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 22:15:19 ]
Java界隈みたいに乱立するのも嫌だ

664 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 22:41:35 ]
RailsがRuby人口増やしてる。Railsを使うためにRuby勉強したりとか。
Railsは競争という面では言語を越えてるので、Rubyに限って競争しなくてもいい。

665 名前:デフォルトの名無しさん mailto:sage [2008/03/12(水) 23:02:25 ]
俺の古い知識では、JavaはSpringとStrutsの2強かと思ってたが、違う?
乱立っていうほどでもないと思う。
乱立なら、PHPの方がよっぽどだろ。どれも不完全。だから乱立。
ただRuby(Rails)みたいに唯一なのは健全じゃないと思うな。
対抗馬が一つはないと、腐っていきそうな気もする。
そうなっていたら、mongrelの中の人もブチ切れる事もなかったんでは・・・と思う。

666 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 00:24:06 ]
>>665
ちょっとまて、SpringとStrutsは別物だぞ。(Spring MVCとなら対抗だが)
あと、mongrelの人のあれは釣りだったと記憶してるのだが。

667 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/13(木) 00:31:29 ]
まあ、一部の業務では人気があるにしてもエンドユーザーへの影響力は大してないだろうな現状。

tDiaryは日記用スタイルシートのデファクトスタンダードに近いレベルまで普及した。
いまRubyが使えない有料レン鯖ってほとんどない。

その点RailsはあくまでWebプログラマ向けツールだしあまりにハードルが高すぎる。
エンドユーザーにも鯖缶にも。
なによりRailsを使ったキラーアプリがまだ出てこないでしょ。

とか、ただただしの中の人が言ってた。

668 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 01:12:23 ]
キラーアプリって現状だと例えばどんなの?

669 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 01:13:29 ]
RailsがなかったらPythonの勉強してたと思う。



670 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/13(木) 01:24:14 ]
tDiaryはブログのはしりだし、スタイルシートが汎用性があっていろいろ移植されてるでしょ。

RubricksやRadiantはXOOPSやNucleusに比べてもインパクトに欠けるんだよな
特にRailsを使わない人間にとっては。
それこそエンドユーザーはMSNやGoogleの無料サービスで満足しちゃうしな。

671 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 01:34:59 ]
quickml……は最近ぱっとせんな。
するとHikiくらいか? pukiwikiやmediawikiには圧倒的に負けるが。

あとはかなり地味かもだがbogofilterなんてのも国産ベイジアンフィルタとして
重宝してた。でも、いまや大抵のメーラに内蔵されてしまってるしなー。


672 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 01:37:59 ]
いやそれはbsfilterだろう

673 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 01:41:13 ]
あ、そうだ。間違えました。


674 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 02:07:34 ]
キラーアプリか
例えばMovableType、WordPress、Xoops辺りのレベルのアプリは当分出てこないだろうな
ロリポ・Xreaで普通に動かない段階ではキラーには成り得ないと思う

675 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 03:47:03 ]
Railsがデファクトなんだけど、他に選択肢があるって状況がベストな気がする
他のFWに影響されてRailsコミュも切磋琢磨していくみたいな

PHPの場合はZend、Cake、Symfonyの3強に加えてEthnaとか国産系もあるし、コミュニティのリソースが分断されすぎてる
どれ使えばいいか困るしね

絶対的な1強 + 2番手 + ダークホースぐらいのバランスが俺は望ましい


676 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 05:24:36 ]
railsは本番実行環境でこれっていう決め手がまだ固まってなくて、
安いレン鯖では導入されてないから、そういうとこで個人の趣味
の範囲だとPHPが多くなってしまうよね。

677 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 07:56:06 ]
ある程度サーバ代出ないと業務でも使えないしね。
でも、PHPならmod入ってるサーバが殆どだし、安くで済む。

678 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 12:00:01 ]
PHP界隈からこっちに来て、Rubyの書きやすさやRailsの使いやすさを認めてる人はたくさんいそう
でも気軽に動かせないから結局PHPに戻ってしまうみたいな

679 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 14:29:45 ]
bash on rails



680 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 23:20:22 ]
C# on Rails
weblogs.asp.net/scottgu/archive/2007/10/14/asp-net-mvc-framework.aspx

681 名前:デフォルトの名無しさん mailto:sage [2008/03/13(木) 23:22:03 ]
>>680
なぜ今頃?

682 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 09:02:40 ]
Rails勉強中につきちょっと教えてください
今Apache+FastCGIで動かしてるんですが、わりかしキビキビ動いてくれています
ただ「最初のアクセス時」がとても遅いです
調べてみるとApache+FastCGIではそれが仕様らしいのですが、
Mongrelだとどうでしょうか?

もし起動時のパフォーマンスがいいようであれば乗り換えたいと考えています

683 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 09:59:12 ]
試してみりゃいいんじゃね?簡単に試せるでしょ

684 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 11:12:45 ]
どっちも個々のクラスは最初に必要になったタイミングでロードされるから
大して変わらない。


685 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 15:55:31 ]
遅いのが最初だけなら、起動してすぐに一回アクセスするようにしとけば?


686 名前:デフォルトの名無しさん mailto:sage [2008/03/15(土) 18:35:10 ]
apacheの起動スクリプトにwgetでも書いとくしか

687 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 06:55:17 ]
皆さんありがとう、ちょっと勘違いしてた
遅いのは「個々のユーザーの最初のアクセス」じゃないんだね
FastCGIのプロセスが続いてる間は速いんだ
その辺よくわからんが道が開けた気がする thx

688 名前:デフォルトの名無しさん [2008/03/16(日) 14:03:08 ]
まだ勉強中でわからないんですが、皆さんがFastCGIやmongrel_crusterを
使っている理由は、Rubyがスレッドセーフじゃないというところから来てるんですよね?
つまり、Rubyはやっぱり1プロセス=1スレッドということなんですか?

689 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/16(日) 14:07:56 ]
RubyにもスレッドはあるがシングルタスクOSでも使えるように疑似的なものだ。
Rubyの単一インスタンスの中で自前で時分割して実行してるだけ。



690 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 14:10:08 ]
>>688
スレッドセーフとはスレッドがあるという意味ではないぞ。


691 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 14:17:57 ]
>>688
最初の問いはNo. 次の問いはYes.
FastCGIとかを使ってる理由はVMインスタンスの起動が遅いからだろ。


692 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 14:23:05 ]
fastcgiやmongrel_clusterで「複数プロセス上げておく」理由を聞いているんだろう。


693 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/16(日) 14:25:11 ]
窓口多い方がレスポンス良くなるからだろ?

694 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 14:38:34 ]
>>693
そういうとき、Javaサーブレット経験者あたりだと、窓口1つでも、
スレッドプール用意しておいて、リクエストがあったら空いてるス
レッドでリクエストを処理すればいい、と考えるので、それに比べ
て複数上げるってコトは
・Rubyはスレッドを持たないのか?
・あるなら、スレッドセーフではないのか?
などという疑問を生じるのだろう。



695 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 14:56:07 ]
rails のいくつかの部品が thread safe じゃないからだろ。
他の framework なら普通に thread 使えるものはある。

696 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 14:58:10 ]
スレッドセーフか否かって、言語じゃなくてフレームワークの作りだよな。
Javaだっていくらでもスレッドセーフでない作り方は出来る。


697 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/16(日) 15:17:57 ]
Win32 threadやpthreadに相当するモノを叩く機能は確かにないよね。

698 名前:688 [2008/03/16(日) 18:45:19 ]
みなさんいろいろありがとうございます。

>>691
Rubyは1プロセス=1スレッドなんですね。ありがとうございます。

>>692
>>694
まさにそうなんですよ。当方WebアプリはJavaサーブレットしか開発経験がなくて。
Tomcatって1プロセスじゃないですか?でもそれで並行処理できてますよね?
(ただし、HttpServletRequestをサーブレットのインスタンス変数に設定すると、スレッドセーブじゃなくなることは知ってます)
でもなんでRailsは複数プロセスをあげなきゃいけないのかなと。。

JRuby On Railsでもサーブレットエンジン複数プロセス起動しないといけないんですかね?
その辺の違いがわからなくて。。。

699 名前:688 [2008/03/16(日) 18:46:52 ]
スレッドセーブ→スレッドセーフすみません。



700 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 19:01:23 ]
そのへんはスレッドをどう実装するかという実装詳細の話になるから
MRI(MatzのRuby実装)とJRubyでは違ってくるだろう。
もともとMRIは「DOSでも動く」移植性のために自力でスレッドを実装し
ている(というかpthread自体昔はどこでも使えるわけじゃなかった?)だけ
なので、プラットフォーム固有のスレッド実装を使ってはいけないという
ことはない。


701 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 20:34:10 ]
JRubyはJavaのスレッドを使うんじゃなかったっけ?

702 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/16(日) 20:42:03 ]
JRuby試せる格安鯖教えてよ。
Googleがそういうの始めないかな。

703 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 21:20:40 ]
レン鯖でもかりれば?

704 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 21:25:02 ]
自宅サーバ+DDNSだな

705 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/16(日) 22:33:34 ]
さくらがPHP5の提供開始したね。

706 名前:デフォルトの名無しさん mailto:sage [2008/03/16(日) 23:39:01 ]
てっきり俺はプロトタイプ用のフレームワークかと・・・

707 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/17(月) 00:23:08 ]
3rdRailは無料版出せばいいのに。


NetBean便利すぎ。重いけど。

708 名前:デフォルトの名無しさん [2008/03/17(月) 22:52:54 ]
RoRで作った有償ソフトってあんのかね?
あるならコードって丸見え?


709 名前:デフォルトの名無しさん mailto:sage [2008/03/17(月) 23:02:15 ]
そりゃ丸見えだろ



710 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 09:40:18 ]
ふつうスクリプトは直接見えないだろ。

711 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 10:06:38 ]
ASPじゃなくてサーバにインスコ出来る形で提供される場合のことをいってるんだろ。

712 名前:デフォルトの名無しさん mailto:sage [2008/03/18(火) 21:28:15 ]
Movable Typeとかは有料、インストール型で、ソース見えるんじゃないかな。

713 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/03/19(水) 00:57:58 ]
GPLv3って、Web経由で利用してるエンドユーザーも実際使ってる
環境のソース見えるようにしないといけないらしいな。
どんだけ基地外だよ。

714 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 01:28:58 ]
Linuxがv3になったら、googleなんかもOS改造部分を公開しないと
いかんということだが、この場合たいしたことないかな
rubyがv3になったら、twitterや食べログのコードも公開するってこと?

715 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 02:03:47 ]
>>713-734
なんか色々誤解しているようだが、少なくともGPLv3にそんな条項はない。
多分AGPLv3のことを言いたいんだろうけど、それにしたってWebサーバー上で
サービスを提供するGPLプログラムが対象であり、そのプログラムが解釈実行
するスクリプト言語で書かれたプログラムは対象ではない。

716 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 22:35:38 ]
>>715
rubyのクラスライブラリがv3になったら、
それを使うスクリプトはv3にしないといけないんでないの?


717 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 22:55:04 ]
そもそも、RubyについてるライブラリにはGPLでないものが多数あるし、
Ruby自体GPLとRuby'sのデュアルだなぁ。
ちなみにRailsはMIT


718 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 23:07:39 ]
tar玉の中みてみたが、Rubyで書かれたライブラリはほとんど
「Rubyと同じ」と書いてあったので、=Ruby'sとGPLのデュアル
ってことだな。


719 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 23:30:50 ]
>>716
そんなの初耳。

/bin/sh と /bin/[ がGPLだったら、シェルスクリプト全てGPLにしなくちゃいけない、
とか言うわけ?



720 名前:デフォルトの名無しさん mailto:sage [2008/03/19(水) 23:59:19 ]
>>716 は正しい。 


721 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 01:16:28 ]
となると rubyがv3になって、
twitterや食べログもv3のrubyを使うようになったら、
ソースが拝めるということですかな wktk
なるか知らんけど

722 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 01:57:53 ]
フォームで入力されたキーワードを

WHERE name LIKE '%クォートした入力値%'

みたいなWHERE節で部分一致検索するのはありがちだと思うんだけど、
AR::Base.find(:all, :conditions => [ 'name = ?', arg ])みたいな
プレースホルダを使った:conditionsにうまく記述できなくて困った。

プレースホルダは 'name = "%?%"' という形では使えないみたいだし、
Trac見ると直接条件式内に展開する方法で回避しているもよう。
dev.rubyonrails.org/ticket/6772

無理なのかなー。


723 名前:デフォルトの名無しさん mailto:sage [2008/03/20(木) 02:22:05 ]
>>721
ならない。せめてライセンスの解説記事でも読んどけ。

724 名前:デフォルトの名無しさん [2008/03/20(木) 23:28:23 ]
ここに書き込むべきかどうか悩んだが、帳票関係(PDF等)ってどうなんでしょうか。。

725 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 00:30:19 ]
何が聞きたいのか分からない。
何をしようとしていて、帳票関係にたどり着いたのか説明して。

726 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 13:45:28 ]
>>724
PDFを出力できるのか、という意味なのかな?

727 名前:デフォルトの名無しさん mailto:sage [2008/03/21(金) 13:50:31 ]
>>726
それだけだと、PDFのプリミティブを出力できるレベルから、他の文書をPDF変換できるレベルまでいろいろありそうだな。

というわけで、詳しく>>724


728 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 00:50:07 ]
ネタ枯れのこの時代、新たな息吹を吹き込んでくれるだろう、>724に皆期待しているのだよ。

729 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 02:11:45 ]
724が再登場するまで別の話題でつながせてもらっていいでしょうか
Rails構築手段で最も強いのはApaceh+Mongrel+Mongrel_clusterかな?
lightyは何だか落ち目っぽいし
とりあえず1年くらいはMongrelでいけばいいんだろうか
開発がストップしたらしいのでこの先ちょっと不安はあるが



730 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 02:22:54 ]
Mongrel安定してる?
自分はもう使わなくなってしまったけど。

731 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 02:28:26 ]
mongrel_rails cluster::restartがうまくいった試しがないんだよな。



732 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 02:50:34 ]
何らかの不具合で前のpidが残ってるから手動で消さないといけない、みたいな解決法を見かけた気がする

733 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 02:54:40 ]
>>730
たまに落ちるけど、まあ満足してるかな
参考までに今はどんな組み合わせかが熱いのか教えて欲しいです!

734 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 13:13:17 ]
journal.mycom.co.jp/news/2008/03/21/017/

735 名前:デフォルトの名無しさん mailto:sage [2008/03/22(土) 21:04:07 ]
PDFはRfpdf使った。
マニュアルとかはFPDFのを参考にすればOK。

他のは日本語パッチを配ってたサイトが無くなってたり、RubyバインディングはあってもドキュメントがC言語のしかなかったりしてちょっと大変。




736 名前:724 [2008/03/23(日) 12:56:53 ]
724です。レスつけてくれた人ありがとう。
具体的にはエンタープライズ用途だと帳票出力が必須なので何かよいものがあればと思って。
やりたいことは画面から条件してして、DBからとってきてPDFへ出力。よくあるパターンですが。。

クライアントには特別なプラグインを入れないでいくとなると(ポリシー,互換性云々で)、HTMLかPDFが妥当な線だと思ってPDFを考えてます。
日本語が使えること、帳票レイアウトツール(コーディングでカバーしてもよいけどメンテナンスが大変だからなるべくパス)、があれば文句なしです。
Ruby FPDFはまだ、本格的に試していないけどなかなかいい予感。
RubyからのJasperReportsもなかなか良さそうですが、とりあえずRuby FPDFから攻めてみたいと思います。


737 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 16:08:37 ]
>>736
735だけど、一応補足。

PDFのライブラリはいくつかあるけど、
日本語が使えるものとなるとあんまり選択肢がなくなる。
フリーにこだわらなければ、PDFlibとかもあり。

Rfpdfを選んだのは、
- フリーである
- 日本語が使える
- Railsプラグインになっている
- RedMineのPDF出力でも使われていた
- (FPDFのだけど)日本語マニュアルがある
という理由。
あとそんなに凝った事をしなかったのもあるかも。

Rfpdfもちょっと問題があって、
特定の日本語文字列の末尾の文字が出力されない事がある。
これはかなりローテクだけど、
出力する文字列の末尾に半角スペース1個を入れる事で回避できた。

Rfpdfにはレイアウトツールはないので、コーディングすることになるけど
その辺を重視するならJasperReportsとかの方が良いかも。


738 名前:デフォルトの名無しさん mailto:sage [2008/03/23(日) 22:01:34 ]
すいません、質問させてください。

Rakefileにmongrel起動用のコマンドを書きました。

  sh "mongrel_rails start -e production"

OS XとCentOSでは問題無いのに、Win XPではエラー

rake aborted!
undefined method `exitstatus' for nil:NilClass

Winでもほかのrake(sh)タスクは大丈夫なのにmongrelは駄目。
(普通にコマンドプロンプトから起動することはできます)
なんで?

739 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 18:48:48 ]
mongrelはイントールされている?



740 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 20:46:30 ]
今度、会社で受けた案件をRailsでやることが決まりました。

今日の社内ミーティングはこんな感じでした。

先輩「WEBアプリだけど、またPHPでやるのはどうよ?」
俺「もうLAMPじゃ面白くないっしょ?StrutsやSpringとかフレームワークやりたいからJavaにしねー?」
後輩「あのFWならRailsってどうですかね?やっぱりないですよね?」
先輩「ないないw」
俺「ちょっwないでしょーーーっっw」
後輩「やっぱりw」
俺「でもRubyも、ありじゃね?
先輩「ありかもな・・・」
三人「ありあり」

すごく不安です。。。

741 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 22:41:54 ]
あはは・・・やめとけ

742 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 22:59:16 ]
絶望した

743 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 23:31:08 ]
なんという集団心理

744 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 23:41:05 ]
>>740
具体的な話は一切でてこないところが素敵

745 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 23:46:57 ]
仕事でrailsって使ってる人いるんだ・・・1.9があれなのに選択肢になるんだ・・・

746 名前:デフォルトの名無しさん mailto:sage [2008/03/24(月) 23:52:57 ]
1.9は流石に仕事では使わんよ

747 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 00:12:36 ]
ARのconditionsの定義で
日付の範囲指定形式って
2008-03-24 00:11:00
でおけ?

Data.find(:all,
:conditions "date > date_str")
これやりたいだけなんだけどさ




748 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 00:20:15 ]
愚直にplaceholder使っとけばいいんでねえの

749 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 03:30:14 ]
:conditions => [ 'date = ?', date ]
とプレースホルダを使おう。




750 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 03:30:38 ]
どういうわけか748が目に入ってなかった俺orz


751 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 14:55:17 ]
既存のアプリのデータベースをRailsで扱っています。
テーブルのフィールドに VARCHAR "class" というのがあって、
RailsでARインスタンスとして読み込んだときに、Rubyクラスオブジェクトとして
無理やり扱おうとして変になっているみたいなのですが、"class" の挙動を無効に
するオプション設定のようなものはありますか?

752 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 15:20:59 ]
Rails on Xcode
etcservices.cocolog-nifty.com/blog/2008/03/mac_os_x_leopar_1af9.html


753 名前:751 mailto:sage [2008/03/25(火) 19:21:04 ]
ActiveRecordのカラム名のマジックかと思ったら、

class Foo << ActiveRecord::Base
end

a = Foo.new
a = Foo.find(:first)

この a.class の戻りがややこしくなるためのようなので、
あきらめて直接SQLを叩いて対応することにしました。

754 名前:デフォルトの名無しさん mailto:sage [2008/03/25(火) 22:55:15 ]
ActiveRecordをThread.newした中で使うとなんかうまく動かないよママン…
findとかでレコード検索さそーとするとそのまま処理が帰ってこない
ActiveRecord::Base.allow_concurrency = true はやってみたけどダメ
Thread.new{ ActiveRecord頑張れ超頑張れ }.join(10) とかやると10秒間はちゃんと動いてくれる
どうにも解決できないので誰かちょっと教えてくれんか…

755 名前:デフォルトの名無しさん [2008/03/26(水) 10:44:30 ]
PDF出力は
wiki.rubyonrails.org/rails/pages/HowtoIntegrateJasperReports
俺はこの方法でやった。
iReportでレイアウト作ってJasperファイルにして、XMLデータで流し込む感じ


756 名前:デフォルトの名無しさん mailto:sage [2008/03/27(木) 17:05:46 ]
なんかすげー怪しいんだけど、ちゃんと動くようなら良いなぁ。
www.modrails.com/

757 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 02:45:13 ]
>>756
ちょww、そいつのブログ

izumi.plan99.net/blog/index.php/about-me/


758 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:39:10 ]
本場のメイドさん?

759 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 01:03:42 ]
超低級な質問で申し訳ないですが、
ActiveRecord::Baseの、::Baseって文法上どういう意味なんですか?
自分が勉強した限りでは、::という記号はクラスフィールドか定数を表すはずだったんですが。



760 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 01:11:49 ]
ActiveRecordというのはモジュール。
ARのモデルは、そのモジュールの中にあるBaseというクラスを継承したクラス。
Baseもそうだが、実はStringやArrayなんかも
「値がClassクラスのインスタンスである」定数
だよ。


761 名前:759 mailto:sage [2008/03/30(日) 02:04:22 ]
>>760
分かりやすい説明ありがとうございます。
Classという型があってオブジェクトはその型の定数になってるんですね。

762 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 03:01:03 ]
759の質問に答えるだけなら、BaseはActiveModuleの定数だな。

Stringみたいなクラス名が、所詮Classクラスのインスタンスを値として
持つ定数に過ぎないってのはなかなか理解しづらい人もいるかも。

>> ActiveRecord.class
=> Module
#ActiveRecordというオブジェクトはModuleクラスのインスタンス

>> ActiveRecord::Base.class
=> Class
#ActiveRecord::BaseというオブジェクトはClassクラスのインスタンス

>> class Hoge < ActiveRecord::Base; end
=> nil
>> Hoge.class
=> Class
#HogeというオブジェクトはClassオブジェクトのインスタンス

>> Hoge.superclass
=> ActiveRecord::Base
#HogeクラスのスーパークラスはActiveRecord::Base


763 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 03:01:59 ]
間違い
誤 ActiveModule
正 ActiveRecordというModule

○刀乙


764 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 20:50:08 ]
            ____
         __,,/  _, ----`ヽ  :.
     :.  / _     ___   、\
       / /   i      \   \\ :.
     :. ,'./       i  ヽ:.   ヽ:.:.. ヽ.ヽ
      ,'/    / .ハ ヽ ヽ:.:.:.:. ヽ::.. ヽヽ :.
     :. |i .i i  .i /  ヽ ト 、 \、:.:.:. ',:.',:.:.lヽ}
       |i .i l  :N_, -弋 \弌弋ナ:}:.:}
    :. |i∧ ', :{ ,ィjモト \  イjミトイイV :.  な…
       .|  :メヽ.', `ozZ}      izN。ハ::{     なんなんですか?
      :. |  :ヾ_! ゝ "゙゙    '  `゙ ハ.:', :.   ここ、どこですか?
      |  :.:_イ .:.ヽ.   (二フ , イ :.:.:!:.ヽ     なんであたし
   :.  / rィイ | :.:.ヽ: >r/`<ノ .:.::.}ヽ、\:.   貼られたんですか?
      / ∧l;l ! :.:.:.://{二 ̄ .} ..:..::リ//ハ.:\
 :.  / .{. ',ヾ、ヽi .:.:.{ /(^`  |.:.:.:.//: : :.}: . ヽ.:.
   / /  ) ヽ ヾ、ヽ:.ハ ヤ{   ∧/.-‐'": : |:.:. i ',
  ./ .,イ .:..} : :\ヾレ'ハ ∧__ノノハヾ、  : : : l:.:.: .ハ ',
  { /| .:.:ハ : : :i Y {ヾ`Yヽニン'ノ}: : } : : : :/:.:.:/ }:.}
  V | .:.:/:.:|_,ィ' ̄  ヽ三{ `ー-ノ : イ : : :/:.:i.:{  リ
    ヽ:.:{、.:.V     : : ヘ     : : {: : :/:.::∧|
     ヽ! )人    : : :人      : : : / \! :.
      "  ヽ : : : : :/イ{     :.ノ: : : :.\ :.
       :.  \__///: :\______/: : : : : : : ヽ
           / //: : :|;|: : : : : : i: : : __: : : : ',
       :.     / 、 {;{   |;|   . : i/. : : : : : :|
          / `Y;{. . . .|;|. : : : /i: : : : : : : : :l

765 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 22:51:18 ]
RailsのAPIを見てると、メソッドの引数にパラメータとオプションの2種類あるんですが
これはRails独特の文法なんですか?
それとも複数の引数に対して呼び名を変えてるだけですか?
そもそもオプションをいくつ付けても付けなくてもよいというのは、どのようにメソッドを宣言してるのでしょうか

766 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 00:03:14 ]
ソース読もうぜこんちくしょー。

767 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 00:39:22 ]
普通に最後の引数がHashで
引数の最後にHashが来る場合は{}を省略できるから名前付き引数に見えるだけ

768 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 11:41:46 ]
>>767
それだとオプションを省略したらHashの引数を省略することになって
引数の数が違うというエラーが出るように思うのですが。

769 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 14:03:53 ]
ソース読もうぜこんちくしょー。



770 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 18:37:41 ]
PCユーザ向けSNSができたね。
Ruby on Rails+Mongrelで出来てるね。

bb.watch.impress.co.jp/cda/news/21440.html

最近増えたなぁ・・・

771 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 18:55:59 ]
>>768
デフォルト引数くらい知っておいてくれ

772 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 22:18:51 ]
ソース読まんようだから書いてやる

def foo(mandatory, arguments, options={})
end


773 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 22:54:26 ]
書いても読まれないよ?

774 名前:デフォルトの名無しさん mailto:sage [2008/04/01(火) 00:04:12 ]
先週出たSB本まぁまぁ
よかった。昔の良書系
インプレス程度だが

775 名前:デフォルトの名無しさん [2008/04/01(火) 18:28:54 ]
Informationテーブルがあったとして、そのカラムを多対多で結び付けたい(親子関係を多対多で付けたい)のですが、どのようにしたらいいでしょうか?
テーブルがどんな風になるのかいまいちわからないのです><

776 名前:775 mailto:sage [2008/04/01(火) 18:30:23 ]
すみません途中で送信してしまいました><

Informationテーブルがあったとして、そのカラム同士を多対多で結び付けたい(親子関係を多対多で付けたい)のですが、
どのようにしたらいいでしょうか?
information_and_informationテーブルがどんな風になるのかいまいちわからないのです><

777 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 12:17:08 ]

table_a
 id
 name

table_b
 id
 name

table a_and_b
 a_id
 b_id
って事かいな?
has_and_belongs_to_manyを使うといいかもしれんね。

778 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 19:01:08 ]
同じテーブルの結合は普通にできると思うし
acts_as_tree でやるのがかんたんにできるんじゃ。
使ったことないけど。

779 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 19:02:03 ]
ごめん。多対多か。



780 名前:デフォルトの名無しさん mailto:sage [2008/04/02(水) 23:51:17 ]
model部分ではActionRecord::Baseを継承したクラスでvalidateメソッドをオーバーライドしますが、
APIを見てみるとvalidateメソッドはActionRecord::Validationモジュールのメソッドのようです。
どうしてオーバーライド出来るんでしょう?

781 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 00:20:54 ]
lib/active_record.rb で、 ActiveRecord::Base.class_eval do ... include ActiveRecord::Validations ... end してるから。

782 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 02:02:44 ]
>>781
ありがとうございます。

783 名前:775 mailto:sage [2008/04/03(木) 15:31:36 ]
ありがとうございます。
自分でもなにがなんだかよくわかってなかったのですが、結局
blog.japan.zdnet.com/yoshimi/a/2007/11/mvcm.htmlを参考にして出来ました _ _

784 名前:デフォルトの名無しさん mailto:sage [2008/04/03(木) 17:47:39 ]
testの実行で微妙にうまく動かなくて困っています

rake test:units で全体をテストするとERRORになる項目がありますが、
一つのファイルだけ指定して、
ruby test/unit/foobar.rb
等と実行すると、PASSします。

autotestにすると、最初の一回は上と同様ERRORになりますが、ファイルを一度
更新して(全く同じ内容で上書き)もう一度テストが実行されると、同じ
テストがPASSします。

モデルのクラス名とDBテーブル名がrails規約に則っていないので、
set_fixture_class で指定しているのですが、

class FoobarTest < Test::Unit::TestCase
fixtures :hogera
set_fixture_class :hogera => Foobar
def setup
@foobar = Foobar.find(1)
end
....
ここが設定されていないようで、Hogeraクラスがないというエラーに
なっています。
なんだか、全体をテストで回すときに最初の一回初期化がおかしいような
動作に見えるのですが、何か原因や、対応策などありますでしょうか?


「2.0.2になってからfunctional testがおかしい、 setup_without_fixtures を
オーバーライドしてみたらうごく・・・」という情報を見つけましたが、
これに関連しているのか、よくわかりませんでした。


785 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 11:44:08 ]
2.0.2のfunctional testは壊れてる

786 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 17:27:02 ]
vendor/plugins/hogehoge/app/controllers/foo_controller.rb
を変更したい場合、このファイルを直接変更する以外に、
別の場所にコピーし上書きして使うことができるとききました。
もしほんとにそんなことができるなら、どこにコピーしたら
いいのか教えてください。


787 名前:デフォルトの名無しさん mailto:sage [2008/04/04(金) 22:09:53 ]
RoRって凄いな…
Javaの10倍早いとかなんとかの噂に釣られて少し勉強してみたけど
マジで2〜3時間程度で1つのWebサービス作れるようになった

788 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 16:16:58 ]
>>787
それは貴方がすごいだけ。

789 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 23:41:06 ]
>>787
RoRの派生系統でもそんな感じ。
たとえばLisp系のGauche/Kahuaもそれぐらいで作れる。
RoRは「10分で作れる・・・」が目標w



790 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 13:14:41 ]
だめだ・・・
俺なんてログインフォームの html.erb 編集だけで 10 分くらいかかっちゃう。

791 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 13:25:36 ]
そこから先も長そうだな・・・

792 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 13:33:42 ]
そのぶん作りたてでは実行速度が絶対的に遅いです
サイトに合わせて設定やパラメータをチューニングしていくとまあまあの動作になります

他の言語では作りたては単一の目的に驀進してて普通に速くて軽快ですが、
ユーザーの利便のためにエラー処理とかオプションとかを作りこんでいくとどんどん遅くなります

どっちもどっちっすな

793 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 16:32:27 ]
>他の言語では作りたては単一の目的に驀進してて普通に速くて軽快ですが、
>ユーザーの利便のためにエラー処理とかオプションとかを作りこんでいくとどんどん遅くなります

でたYO!Ruby厨のネガキャンw
「他の言語はどんどん遅くなってしまえ」の間違いじゃねえの?www

794 名前:デフォルトの名無しさん [2008/04/06(日) 17:38:40 ]
Rubyはもっと広がってほしいけど、その前にPHPを抹殺してほしい。

795 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 18:36:15 ]
PHPとPerlとVBとCOBOLとJavaは関わりたくないな

796 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 18:45:28 ]
PerlとJavaは内容によっては許可


797 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 18:48:10 ]
>>793
あんたプログラム作ったことないね

798 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 19:01:04 ]
PHPなどの他の言語では遅くなるけどRubyでは遅くならない例ってあるのかな?
具体的なケースがあればRoRを使う理由のひとつとして提案しやすいよ。
RubyとRoRのどの部分が速度に効いてるかその理由も聞かしてよ。
作りこんでいくと遅くなるだと、どの言語を使ってもプログラマーの腕次第って結論になるよ。
設計が良いから遅くならない理由をちゃんと説明できるようになりたい。

799 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 19:29:29 ]
        \   ∩─ー、    ====
           \/ ● 、_ `ヽ   ======
           / \( ●  ● |つ
           |   X_入__ノ   ミ   そんな餌で俺様が釣られクマ――
            、 (_/   ノ /⌒l
            /\___ノ゙_/  /  =====
            〈         __ノ  ====
            \ \_    \
             \___)     \   ======   (´⌒
                \   ___ \__  (´⌒;;(´⌒;;
                  \___)___)(´;;⌒  (´⌒;;  ズザザザ



800 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 19:44:59 ]
PHPonRailsとか無いんですか

801 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 20:17:11 ]
COBOL ON COGSなら


802 名前:デフォルトの名無しさん [2008/04/06(日) 21:38:21 ]
www.nicovideo.jp/watch/sm1233406

Perl + Catalystフレームワークによる1行掲示板の作成過程
8分で作ってるぞw

803 名前:デフォルトの名無しさん [2008/04/06(日) 21:39:56 ]
rubyは口だけ

804 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 21:56:25 ]
8分で作るまでになんどリハーサルやったんだろうな。

第一8分でできたといってもそれ実用レベルじゃないしな。

805 名前:デフォルトの名無しさん [2008/04/06(日) 21:57:58 ]
Ralisでこんなに速く簡単に作れるんか?

806 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 22:26:20 ]
n分で作るなんとかシリーズって、みんなタイピング練習してからキャプチャしてるだろ。
ってマジレスでごめん。

807 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 22:27:27 ]
>>804
それはRailsにも言えること。
あんなのを素の本気でアピールに使うのは迷惑千万。


808 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 22:32:37 ]
Rubyだけが例外と思ってる奴はアホ。
現実的にはRoRもスケーラビリティーに問題があるというのが一般的な見解。
作りこめば遅くなるのも同様。
Catalystが早いのもリーハーサルじゃなくてコード数のおかげ。
RoRは開発スピードが停滞してて他言語に追い越されつつある。

809 名前:デフォルトの名無しさん [2008/04/06(日) 22:40:28 ]
デフォルトでperlのほうが2倍以上速くてしかも
RubyだとFastCGIしか使えないだろw
どう見てもperlにメリットがあると思うw



810 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 22:58:16 ]
>>809
まぁ保守という面を除けばな

811 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 23:00:39 ]
とは言え、perlで1万行書いたら確実に死ねる。
経験者が言うんだから間違いないw
# しかもそのシステム、まだ現役なんだ……。


812 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 23:00:58 ]
>>804
rubyは実用的だとでも?

813 名前:デフォルトの名無しさん [2008/04/06(日) 23:05:16 ]
本読むにも文字が少ないほうが速く読めるだろ
1000ページの本と
100ページの本どちらが速く見れるか
慣れれば省略なんて分かるさ。

814 名前:デフォルトの名無しさん [2008/04/06(日) 23:06:11 ]
Rubyだとperlで1万行で済むところ3万行も書く羽目になる

815 名前:デフォルトの名無しさん [2008/04/06(日) 23:23:10 ]
3万ってたいしたことなくね?

816 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 23:28:13 ]
私的には些細な保守性や速度の差よりも、
ドキュメントが充実してるか否かの方が大きいわ。

817 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 23:51:09 ]
じゃ、PHPってことで

818 名前:デフォルトの名無しさん [2008/04/06(日) 23:52:21 ]
ドキュメントもモジュールもperlが一番多くて出来る事も多い


819 名前:デフォルトの名無しさん mailto:sage [2008/04/06(日) 23:56:56 ]
FastCGIって使うのかなぁ。
Apache+mod_proxy_balancer+mongrel_cluster だと思うけど。

スケーラビリティの無さは確かに困るね。
実際に開発に入る前に、
その辺の基礎的な所を固めるのに結構時間かかったよ。




820 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 00:49:16 ]
>>804
ホントはそんなにゲームが上手いわけじゃなくて、イベントのために
「スターソルジャー」のステージ1だけ猛練習してた高橋名人みたいなものか。

821 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 01:09:42 ]
ウェブアプリなんて、8分でつくれるんだろ?

822 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 01:49:45 ]
自分が書いたプログラムが全部で何行になっているか確認する方法はありますか?
RoRだとよくわからなくて・・・

823 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 01:50:07 ]
rubyって早くも行き詰ってる感あるからなぁ
RoRでちょっと人気でただけで
PHPが登場したときの盛り上がりと比較すれば差は歴然だよね
pythonではなくruby選ぶ理由なんて現時点では皆無だし

824 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 02:05:10 ]
>>814
両方いじった感触だとそれはありえない。
perlやrubyなら100行で済むところが、javaだと300行になるのはよくあるが。

825 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 03:15:48 ]
> 822

rake stats


826 名前:デフォルトの名無しさん [2008/04/07(月) 09:04:09 ]
pythonのような屑言語と比較するなよ

827 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 09:07:01 ]
板違いなので次スレはここで

pc11.2ch.net/test/read.cgi/php/1207425569/

828 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 09:09:01 ]
Rails on Apache と Apache on Rails
どっちがいい?

829 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 10:17:06 ]
>>819
mongrelって最適なプロセス数をちゃんと考えておかないとイマイチじゃね?

そこら辺皆どうしてるん?
ちゃんとJmeterでしらべてるのかしらん?



830 名前:デフォルトの名無しさん [2008/04/07(月) 11:29:21 ]
rails全然スケールすると思うけどなぁ。
ちゃんと作ってれば、WEB系システムのスケールってだいたいDBの速度じゃない?

スケーラビリティーに問題ありって人はどういった状況なの?

831 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 12:12:47 ]
>>829
おれも興味ある。
mongrelのプロセス数が足りてないのか、あるいは多すぎるってのは、
何を見て判断すればいいんだろ。
とりあえず最初から3個のままだ。

832 名前:デフォルトの名無しさん [2008/04/07(月) 13:04:30 ]
描画で時間かかってて、同時アクセス数が多いならプロセス数増やす
DBが遅いならRAILS関係なし

プロセス数たりなければ、apacheの待ちプロセスが増える。
プロセス多すぎたらリソース食いすて遅くなる等の問題が出る。

メモリはいっぱい積もう。

833 名前:デフォルトの名無しさん [2008/04/07(月) 13:58:53 ]
質問させてください。
初心者で、何をいじれば、良くなるのか、わからないので、
ヒントをいただけるとうれしいです。
構成は、
Apache(+mod_proxy_balancer) + mongrel_cluster(Rails) + MySQL
です。
スクリプトで、別マシンから平均25アクセス/秒程度の
負荷を掛けてみました。
レスポンスに平均2秒程度掛かってしまっています。
Mongrelは10個立ち上げてます(多すぎですかね?)
アプリマシンの状態はこんな感じです。
$ vmstat 5
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 0 3242764 78532 117304 0 0 0 0 10 10 0 0 100 0
0 0 0 3244628 78532 117348 0 0 0 0 1329 1262 61 4 35 0
14 0 0 3243952 78548 117416 0 0 0 25 1579 1548 72 6 22 0
7 0 0 3242316 78556 117500 0 0 0 25 1876 1535 92 8 0 0
9 0 0 3241708 78564 117584 0 0 0 22 1937 1415 93 7 0 0
9 0 0 3240336 78572 117664 0 0 0 22 1839 1281 93 7 0 0
10 0 0 3240960 78580 117740 0 0 0 21 1883 1324 94 6 0 0
9 0 0 3238612 78588 117820 0 0 0 26 1885 1336 93 7 0 0
10 0 0 3240196 78596 117904 0 0 0 22 1887 1325 93 7 0 0
10 0 0 3240456 78604 117988 0 0 0 24 1903 1432 94 6 0 0
9 0 0 3240588 78612 118068 0 0 0 22 1875 1272 93 7 0 0
5 0 0 3240100 78620 118156 0 0 0 22 1935 1704 92 8 0 0


834 名前:833 [2008/04/07(月) 14:15:05 ]
すみません。アプリマシンは、こんな感じです。
$ vmstat 5
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
-r--b --swpd---free---buff--cache --si---so ---bi----bo --in---cs us-sy-id-wa
-0--0 -----0-3242764--78532-117304 ---0----0 ----0-----0 --10 --10 -0--0-100--0
-0--0 -----0-3244628--78532-117348 ---0----0 ----0-----0 1329-1262 61--4-35--0
14--0 -----0-3243952--78548-117416 ---0----0 ----0----25 1579-1548 72--6-22--0
-7--0 -----0-3242316--78556-117500 ---0----0-----0----25 1876-1535 92--8--0--0
-9--0 -----0-3241708--78564-117584 ---0----0-----0----22 1937-1415 93--7--0--0
-9--0 -----0-3240336--78572-117664 ---0----0-----0----22 1839-1281 93--7--0--0
10--0 -----0-3240960--78580-117740 ---0----0 ----0----21 1883-1324 94--6--0--0
-9--0 -----0-3238612--78588-117820 ---0----0 ----0----26 1885-1336 93--7--0--0
10--0 -----0-3240196--78596-117904 ---0----0 ----0----22 1887-1325 93--7--0--0
10--0 -----0 3240456--78604-117988 ---0----0 ----0----24 1903-1432 94--6--0--0
-9--0 -----0-3240588--78612-118068 ---0----0 ----0----22 1875-1272 93--7--0--0
-5--0 -----0-3240100--78620-118156 ---0----0 ----0----22 1935-1704 92--8--0--0
-0--0 -----0-3241952--78628-118204 ---0----0 ----0----21 -978-1249 41--3-56--0
-0--0 -----0-3241960--78636-118224 ---0----0 ----0----12 -535--904 15--2-83--0
-0--0 -----0-3241952--78644-118232 ---0----0 ----0-----8 -347--900 -6--1-93--0
-2--0 -----0-3241952--78652-118236 ---0----0 ----0-----6 -294--853 -1--0-98--0
-0--0 -----0-3241952--78652-118236 ---0----0 ----0-----3 -269--939 -0--0-100--0
-0--0 -----0-3242016--78660-118236 ---0----0 ----0-----2 -253--820 -0--0-100--0

835 名前:デフォルトの名無しさん [2008/04/07(月) 14:37:15 ]
railsログでは1プロセスは1リクエストを何秒で処理できるの?

簡単に言えば1プロセスが1秒に10リクエスト裁けるなら、mongrel5個なら
1秒に50個処理できるよね。

もともと処理に2秒かかるなら、プロセスいくつ増やしたって当然2秒かかる。

プロセス増やして描画の処理能力が落ちちゃってるならプロセス多すぎる。
DBが遅くなってるなら設計がだめかサーバーがぼろすぎる。

設計がダメなアプリは何でどう作ってもダメだからしょうがないよ。

836 名前:833 [2008/04/07(月) 14:59:22 ]
>>835
アドバイス有難うございます。
秒間、18リクエストぐらいまでは、
平均、0.2秒で返してくれるんですが、
19〜20リクエストぐらいから、どんどん遅くなるみたいです。

railsログは、log/production.logを見れば良いんですかね?
production.logは、こんな感じです。
Completed in 0.01850 (54 reqs/sec) | Rendering: 0.01424 (76%) | DB: 0.00000 (0%) | 200 OK
Completed in 0.01773 (56 reqs/sec) | Rendering: 0.01332 (75%) | DB: 0.00000 (0%) | 200 OK
Completed in 0.06937 (14 reqs/sec) | Rendering: 0.06201 (89%) | DB: 0.00000 (0%) | 200 OK
Completed in 0.03860 (25 reqs/sec) | Rendering: 0.03171 (82%) | DB: 0.00000 (0%) | 200 OK
Completed in 0.05636 (17 reqs/sec) | Rendering: 0.05005 (88%) | DB: 0.00000 (0%) | 200 OK
Completed in 0.01776 (56 reqs/sec) | Rendering: 0.01385 (78%) | DB: 0.00000 (0%) | 200 OK
Completed in 0.13781 (7 reqs/sec) | Rendering: 0.12299 (89%) | DB: 0.00000 (0%) | 200 OK



837 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 15:01:49 ]
個人的には鯖がたくさんあって、書き込みが多いシステムにはmongrel

それ以外ならFastCGIで
htmlに吐いてキャッシュかRailsキャッシュ使うなりして逃げた方がいいと思ってる。

>>833
それだけじゃワカラン。

SWAPは発生して無いみたいだから
DB回りがボトルネックになってると予想

JOINとかしてる?
無駄なクエリ発行してない?
ARに頼ると遅くなるよ

select * from hoge where id = ????? limit 1 ;
みたいな単発SQLでも数が多いと時間かかる時もある

838 名前:833 [2008/04/07(月) 15:18:06 ]
>>837
有難うございます。
確かに、クエリは多くなっているように思います。
JOINしてます。
ARに頼らないということは、DBIを使うべしということでしょうか?
よくわかっていないもので、お手数お掛けしてすみません。

839 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 15:28:53 ]
>>838
find で
:select で絞るとか、
:join で明示的にJOINするとか・・・

クエリに関わる物全てが動的だったら無理だけど、
マスタデータとか、バッチ更新でしか変わらないようなデータなら
フラグメントキャッシュ使うとかやってみたら?

例えば、TOPのランキング一覧とかなら
その部分はフラグメントキャッシュで持って
1時間毎キャッシュクリアして更新するとか。

クエリ多いなら、
DB側のチューニングもやってなければやった方がいいかもしれんね。



840 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 15:33:21 ]
さくらのレンタルサーバーとかだったら、DB周りはチューニングしようがないと思うよー

841 名前:833 [2008/04/07(月) 15:38:16 ]
>>839
有難うございます。
:selectは、使ってませんでした。
アドバイス助かります。

キャッシュについても試してみます。


842 名前:833 [2008/04/07(月) 15:41:21 ]
>>840
自宅に置いてるので、いじれると思うんですが、
具体的な方法がわかってません。


843 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 16:01:35 ]
David Pollak

わたしはこれまで Rails による開発を 18 カ月、Java による開発を 10 年経験してきました。
Rails はウェブ開発に新しい風を吹き込みました。よく使うタスクはコマンド一発で実行することができます。
実にすばらしい。しかし、私は気が付いてしまいました。Ruby の動的型付けは多くのエラーを引きおこすことに。
そして、安心してデプロイするためには 95% ものテストカバレッジを達成しなければいけないことに。
95% のテストカバレッジを得ることの代償として、私の書いたコードは(テストコードも含めて)
Java で書いたものと同等のサイズにまでふくれあがってしまいました。
その上、Rails では動的なコードの変更が可能なため、開発・テスト・デプロイ中にトラブルが続出するようになりました。
高いテストカバレッジを確保しているにも関わらずです。
これらの問題にくわえて、MRI(Matz Ruby Implementation: まつもとゆきひろ氏による Rubyの実装)は速度が遅く、
言語仕様も安定していません。それなのに開発コミュニティはそのことに見向きもしません。

844 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 16:28:12 ]
>>843
ひがの反論の方がしっくりくるよ
95%カバレッジしててトラブル続出ってありえないだろう

845 名前:デフォルトの名無しさん [2008/04/07(月) 17:09:37 ]
CPUリソース不足
あとはMYSQLで処理開始待ちが増えてないかどうか見てみな



846 名前:833 [2008/04/07(月) 17:31:05 ]
>>845
アドバイス有難うございます。
ということは、Railsのコードに大幅な改善が見込めないなら、
さっさと、アプリサーバを増やした方が早いということでしょうか。
MySQLの状態の見方が良くわかっていないのですが、
負荷テスト中に、show full processlist;してみると、こんな感じでした。

mysql> show full processlist;
+-----+--------+---------------------+----------------+---------+------+-------+-----------------------+
|-Id--|-User---|-Host----------------|-db-------------|-Command-|-Time-|-State-|-Info------------------|
+-----+--------+---------------------+----------------+---------+------+-------+-----------------------+
|-316-|-apphnk-|-192.168.2.100:60163-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-317-|-apphnk-|-192.168.2.100:60164-|-hnk_production-|-Sleep---|----1-|-------|-NULL------------------|-
|-318-|-apphnk-|-192.168.2.100:60165-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-319-|-apphnk-|-192.168.2.100:60166-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-320-|-apphnk-|-192.168.2.100:60167-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-321-|-apphnk-|-192.168.2.100:60168-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-322-|-apphnk-|-192.168.2.100:60169-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-323-|-apphnk-|-192.168.2.100:60170-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-324-|-apphnk-|-192.168.2.100:60171-|-hnk_production-|-Sleep---|----1-|-------|-NULL------------------|-
|-325-|-apphnk-|-192.168.2.100:60172-|-hnk_production-|-Sleep---|----0-|-------|-NULL------------------|-
|-327-|-root---|-localhost-----------|-NULL-----------|-Query---|----0-|-NULL--|-show-full-processlist-|-
+-----+--------+---------------------+----------------+---------+------+-------+-----------------------+
11 rows in set (0.00 sec)


847 名前:デフォルトの名無しさん [2008/04/07(月) 18:12:03 ]
今あるデータだけだとそう考えられるね。とりあえずプロセス減らして、サーバー買うなりCPU強化するなり、ロジックを修正するなり

BACKGROUNDRBとか、大量のログとか、ファイルの読み書きとかやってないよね?


848 名前:833 [2008/04/07(月) 18:28:08 ]
>>847
アドバイス恐縮です。
BackgrounDRb、log/production.log以外のログ、
ファイルの読み書き、などやっていないと思います。
教えていただいたことをやってみます。
有難うございました。

849 名前:デフォルトの名無しさん [2008/04/07(月) 19:21:18 ]
production logだけど、遅くなってる時はproduction.logの処理時間も遅くなってるんだよね?
apacheでは処理時間だしてる?

apacheで表示される処理時間と、同じリクエストのproduction.logを見てみな。

どっちみちWEBアプリでユーザーのCPUリソースが90%超えるとかありえないから
どっかおかしいんじゃないかな。それか 凄く思いロジックを凄いぼろい鯖でやってる?




850 名前:833 [2008/04/07(月) 20:38:36 ]
>>849
有難うございます。
Apacheのログに%D(マイクロ秒?)で処理時間を出してみました。
こんな感じで、
1312022
970413
1431397
1205620
1165282
1027745
1138476
1326502
980994
大体1秒から2秒ぐらいかかってます。ただ、6335389ぐらいかかってる
リクエストが混じってるので、平均して2秒以上掛かってます。
(遅かったリクエストの処理が他に比べ重いとかそういうことはないです。)

すみません。先ほど、production.logのデータを取るところを間違ったみたいで
一番負荷が掛かってる頃では、大体0.2〜0.35秒ぐらいかかってました。
30秒間で、1秒程度掛かってるのも3回ほどありました。


851 名前:833 [2008/04/07(月) 20:50:09 ]
>>849
ロジックが酷いのかもしれないです。
CPUは、Core2Duoです。
:includeとかで、もう少し速くなりそうではあるのですが、
根本的に、やり方が酷いのかもしれません。。

あと、秒間18リクエストぐらいに落とすと、
ユーザーのCPUリソースがだいたい60%ぐらいで、
平均0.2秒ぐらいでレスポンスが返ってきます。


852 名前:デフォルトの名無しさん [2008/04/07(月) 21:43:54 ]
TEXT入力ボックスの幅を調整するにはどうすればよいですか?

<p>
<b>Text</b><br />
<%= f.text_area :text %>
</p>



853 名前:833 [2008/04/07(月) 21:51:17 ]
>>852
こんな感じ?
<%= f.text_area :text, {:cols => 50, :rows=> 5 }%>

854 名前:デフォルトの名無しさん [2008/04/07(月) 22:03:43 ]
>>853
ありがとうございます。
うまく行きました。3日前からはじめたばっかりなもんで ^^;


855 名前:833 [2008/04/07(月) 22:37:19 ]
>>854
僕もつい最近覚えました。。

856 名前:デフォルトの名無しさん mailto:sage [2008/04/07(月) 23:38:37 ]
>>851
Railsのログ見てどこがネックになってるかわからんのん?
DBアクセスで何秒、レンダリングで何秒か位は出てた気がする。
見当違いだったらスマンね。

857 名前:833 [2008/04/07(月) 23:53:33 ]
>>856
有難うございます。
DBは問題ないみたいです。
レンダリングに結構時間が掛かってるみたいなので、
何か無駄なことをしちゃってる気がします。
何か絞り込めた気がします。ありがとうございました!


858 名前:デフォルトの名無しさん [2008/04/08(火) 00:39:14 ]
railsのログが0.2秒でレスポンス返してるって事はRAILSには問題ない。

apacheのコネクション数の限界なんじゃないか?
keepaliveさげてmacclient上げろ

railsのログのDBの部分にはトランザクション外のDBの待ちは入って無いから注意

もうめんどくせーから これ以上は金払えwww

859 名前:833 [2008/04/08(火) 01:59:33 ]
>>858
有難うございます。すみません。
KeepAliveをさげるというのは、KeepAliveTimeOutを下げるってことで
良いのでしょうか。MaxClientsも上げました。
でも、軽くなりません。。
Apacheについても詳しくないので、設定の仕方が間違っているのかも
しれませんが、、

ちょっと気になるのが、railsのログでDBの処理時間が
ずっと0になってるんですが、これは、こういうもんなんでしょうか?

ともかく、色々いじって試してみます。
お手数お掛けしました。




860 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 02:32:37 ]
mongrel_clusterのプロセス数だけど、
うちはjmeterで負荷かけてテストしてるよ。
あとはマシンスペックと相談かな。

スケーリングで困るのはDBを分けて分散させようとした時とか、
画像とかのコンテンツを別サーバに入れようとした時とか。
もし30台とかになったらマウントするのも苦労だろうし。

他にはpaginateが件数多くなった時に死ぬ。


861 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 03:39:39 ]
>>823
Pythonはうちの会社では選択肢に入らないけど
実際Pythonで仕事やってるの?
今のところ、うちの会社はPHPとRuby(Rails)の2択。
PHPしかできない奴はPHPやらせて、
それ以外は状況に合わせてどっちか選択。
自分が担当できるものは全てRailsでやってる。

862 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 08:23:59 ]
will_paginate を 2.2 にしたら ページが1と2だけになった(´;ω;`)

863 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 10:23:47 ]
Railsで.htaccessを使わずにディレクトリ毎にアクセス制限をかけるにはどうしたら良いですか?

864 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 10:29:07 ]
>>863
before_filter でIP制御でもしてろよwwww

とりあえず状況を詳しく書く作業に戻るんだ。

865 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 11:42:42 ]
例えば
rails_root/pubulic/works/user_001
               /user_002
                :
というディレクトリをユーザ(ここではユーザ名user_001)登録時に作成します。
user_001さんはログイン後にuser_001ディレクトリ内のコンテンツにアクセスできますが、
user_002ディレクトリ内のコンテンツにはアクセスできないようにしたいです。

866 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 12:21:54 ]
>>865
httpd.conf を書き換えればいいと思うよ。
publicの下に非公開のコンテンツを置いてる時点で負け。

867 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 14:20:48 ]
アプリでログイン管理して
/work/user
にアクセスしたら全員自分のページが見れるようにすれば楽じゃね?


というかディレクトリ内のコンテンツって共有ファイルじゃなかろうな?

Rails云々じゃなくてディレクトリのアクセス制限でいい気がするが・・・



868 名前:デフォルトの名無しさん mailto:sage [2008/04/08(火) 18:36:34 ]
ありがとう。.htaccess使えばやりたいことは出来るんだけど、
認証ダイアログを出すのはスマートではないなと思ったてだけでした。

869 名前:デフォルトの名無しさん [2008/04/08(火) 23:44:22 ]
それはアクセスできない場所にファイル置いてrailsで認証してからx_send_fileで送信だ。
認証つけてapacheで直接処理したいなら.htaccess書くしかねーな




870 名前:デフォルトの名無しさん mailto:sage [2008/04/09(水) 10:30:57 ]
・OSに管理させる
・Webサーバに管理させる
・Railsに管理させる
・自前スクリプトで管理する

このレベルから選択する必要があるな

871 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 00:09:50 ]
ちょっとづつ荒れてきたな

872 名前:デフォルトの名無しさん [2008/04/10(木) 01:54:43 ]
初歩的な質問ですまん。

Railsでアプリ開発するとき、アプリで共通で利用するクラスとかモジュールって
皆さんどこに配置してるんすか?いわゆるユーティリティってやつ。
たとえば、アプリケーションでよく使う文字列処理をまとめた
クラスをつくったものの、配置先がどこが適切なのかわからん。。

ちなみに今はinitializer配下においてる。
なんか使い方間違えてる気がしてる。

873 名前:デフォルトの名無しさん [2008/04/10(木) 02:10:04 ]
file_column でアップロードした画像を表示することができましたが、
編集画面がうまくいきません。

<% form_for :hoge, @hoge, :url => {:action => 'create'}, :html => {:multipart => 'true' } do |f| %>


874 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 08:40:40 ]
>>872
lib/ でいいんじゃない?


875 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 10:01:34 ]
以前、たぶんrails-2.0.1で作成し始めたアプリがあって、2.0.2になった今も
./script/console を起動すると、

Loading development environment (Rails 2.0.1)
>>

と表示されています。
ローカルの環境はrails-2.0.2にアップデートして、2.0.1は削除したつもり
なのでちょっと気持ち悪いんですが、気にしなくてもよいのでしょうか?

$ gem list -l rails

*** LOCAL GEMS ***

rails (2.0.2)


$ ./script/console
Loading development environment (Rails 2.0.1)
>> RAILS_GEM_VERSION
=> "2.0.2"


876 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 13:39:48 ]
environment.rb の RAILS_GEM_VERSION を 2.0.2 にする

877 名前:873 [2008/04/10(木) 14:09:12 ]
873です。
<% form_for :hoge, @hoge, :url => { :action => 'update', :id => @hoge.id }, :html => {:multipart => 'true' } do |f| %>
としてみたがまだ解決できません。

Unknown action
No action responded to Unknown action
No action responded to 22 ← 編集中のid


878 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 14:51:02 ]
>>877
Unknown actionってかいてあるじゃないか。

んなaction しらねーぞ!! 

ってことじゃね?

879 名前:875 mailto:sage [2008/04/10(木) 18:53:14 ]
>>876
してるんですよね〜・・・

config/environment.rb

# Specifies gem version of Rails to use when vendor/rails is not present
RAILS_GEM_VERSION = '2.0.2' unless defined? RAILS_GEM_VERSION




880 名前:デフォルトの名無しさん [2008/04/10(木) 19:01:18 ]
rake db:test:clone
rake db:test:clone_structure
rake db:test:prepare

の違いがわからないです。

rake db:test:clone
rake db:test:clone_structure
の違いはわかるのだけど、これらと

rake db:test:prepare

の使い分けがよくわからないです。
どういう違いがあるのかどうか教えて下さい。

881 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 19:27:30 ]
>>875 これとかは?
rake -T
...
rake rails:freeze:gems # Lock this application to the current...
rake rails:unfreeze # Unlock this application from freeze ...

882 名前:デフォルトの名無しさん mailto:sage [2008/04/10(木) 20:55:55 ]
>>879
freezeしっぱなしで忘れてるとか?


883 名前:875 mailto:sage [2008/04/11(金) 00:46:12 ]
>>881 >>882
rake rails:unfreeze
で、いけました!

freezeというのがよくわからないので、調べてみます。
どうもありがとうございました。


884 名前:デフォルトの名無しさん [2008/04/12(土) 21:46:02 ]
フラグメントキャッシュなんですけど、
キーをこちら側で指定することはできないんでしょうか?

たとえば、
host/controller/action/aaa/bbb/***
の***の部分が何であっても変わらないビューの一部をキャッシュする場合、
host/controller/action/aaa/bbb/ccc
host/controller/action/aaa/bbb/ddd
host/controller/action/aaa/bbb/eee
で、それぞれキャッシュされちゃうと無駄な気がするのですが、
それを避ける方法はありますか?

885 名前:デフォルトの名無しさん [2008/04/12(土) 23:37:56 ]
www.modrails.com/

ついにきたな。

886 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 00:30:30 ]
やっときたな。10年遅れか?

887 名前:884 mailto:sage [2008/04/13(日) 01:20:41 ]
自己解決しました。引数指定できるんですね。
教えて君ですみませんでした。

888 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 11:13:50 ]
試せっていわれるだろうけど試した人いる?
modrails
今テレビ来たところで試せないのでって言い訳だけど。

889 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 12:05:35 ]
試そうと思ってるトコロなんだけど、virtualhost hoge.example.comの下で
/app1と/app2をそれぞれ動かすような設定方法がわからん。

2.2 Deploying to a sub URI
ってのは結局アプリ1つだけを/の代わりに/appのようなパスで動かすための
設定のようだし。





890 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 14:42:31 ]
試した。CSSが反映されない。

891 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 16:23:46 ]
httpd.confでAllowOverrideを無効にしたら解決した

892 名前:デフォルトの名無しさん mailto:sage [2008/04/13(日) 23:14:24 ]
>>888
導入自体はすごく簡単だった。
デフォルトでproductionで動くので
開発時はhttpd.confに
RailsEnv development
って書くのを忘れずに。
しばらく使ってみて問題が出ないか様子を見ることにする

893 名前:888 mailto:sage [2008/04/13(日) 23:41:44 ]
>>891
>>892
参考にさせてもらいます。
まだ試せそうにないけど。。

894 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 22:06:50 ]
そろそろ900なので告知します
Railsは板の趣旨から明らかにwebprog板が適切なので
次スレはwebprog板の下記スレの利用をお願いします

pc11.2ch.net/test/read.cgi/php/1207425569/

895 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 23:29:40 ]
railsを初めてみようと入門書をざっと目を通してみたのですが、
以下のようなことはrailsではどう設定すればできるのでしょうか?
webページでよくある構成で、フレームを複数に分割して上のフレームはタイトル固定で、
下のフレームでrailsアプリを動かしたい時に、railsはコントローラーがURL?になっているので
ページ全体が遷移してしまうような気がするのですが、、、
要するに遷移先をここのフレームに表示みたいに設定できるかということです。
宜しくお願い致します。

896 名前:デフォルトの名無しさん mailto:sage [2008/04/15(火) 23:46:29 ]
>>895
単にaのtarget属性じゃないの?


897 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 02:45:45 ]
>>895
フレームを使わない

898 名前:859 mailto:sage [2008/04/16(水) 11:51:29 ]
>>896,897
有難う御座います。
上のフレームには一回表示すれば更新の必要はないが、表示するのは重たい
ページだったとします。
下のフレームはrailsのコントローラーを使ってページ遷移をしたい際に、
フレームを使わないと全体に更新がかかる?ので上フレームも再読み込み
する必要なないのに、また読み込みを行い重くなるのを防ぎたいのです。
この場合は897さんのようにフレームを使わず、Ajaxでの部分的な読み込み
しかないのでしょうか?

899 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 16:48:28 ]
>>898
まず rails を使わないフレームだけのサイトを作る
その後、下フレームを rails と差し替える
これでおk



900 名前:898 mailto:sage [2008/04/16(水) 17:15:45 ]
>>899
なるほど。
ではこのような場合はどうでしょうか?

--------------------------
| |←タイトルフレーム
|--------------------------|
| |
| |
| |
| |←メインフレーム
| |
| |
|--------------------------|
| |←ボタンフレーム
--------------------------

のような3分割のページがあったして、
「タイトルフレーム」は固定。「ボタンフレーム」は
色々なボタンが並んでいるフレームで、そのボタンを押した時の
各処理を「メインフレーム」に表示させたい。
「タイトルフレーム」、「ボタンフレーム」は1回しか読み込む必要はなし。

rails で frameset を使った例を色々調べてみたのですが、
見当たりませんでした。(iframeの例はありました)
度々すみませんが宜しくお願い致します。


901 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 17:38:11 ]
今時フレーム・・・社内システムか何かか?

てかタイトルフレームってなんだ?
メニューヘッダのようなものじゃろうか。

キャッシュして静的ページ化すりゃいいじゃんと思ってしまうのだが・・・


902 名前:デフォルトの名無しさん [2008/04/16(水) 19:44:12 ]
パスワードのハッシュ化に使うsaltなどの設定をひとっところにまとめたいのですが、
どのようにするのがスマートでしょうか? _ _

903 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 20:31:57 ]
いまどきフレームはあり得んな。
ショボく見えるだけ。

あと、HTMLというか、ページとURLの関係をちゃんと分かった方がよい。
フレームにしてもそれぞれのフレームにURLがあるだろ。

904 名前:デフォルトの名無しさん mailto:sage [2008/04/16(水) 22:29:30 ]
>>900
まず rails を使わないフレームだけのサイトを作る
その後、メインフレームを rails と差し替える
これでおk

905 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/16(水) 23:38:35 ]
>>902
saltってhashに含まれるでそ?常考
ランダム生成にしとけば?
Rubyの疑似乱数はたしかMT19937ですね



固定にするなら、ymlから読むようにでもするかな。

906 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 00:07:31 ]
>>905

Railsでよく使われる認証系のパスワード暗号化って、暗号化した
値にsaltが付いてくるcryptとかじゃなくて「アプリ固有のsalt+パスワード」
のダイジェスト(SHA512とか)な実装が多いんだな。なんでだろ。



907 名前:902 mailto:sage [2008/04/17(木) 20:24:07 ]
あー、ごめんなさい。SHA1に固定のsaltをつける場合です。

>>905
ありがとうございます。
ymlということは、別途に自分で用意すればいいのでしょうか?
Railsで用意されている設定システムがあればそれを使用しようと思いまして。
具体的にはenviromentなんかにきれいに書けるとうれしいのですが。。
我儘言ってすみません><

>>906
固定のsaltで暗号強度的に事足りるからではないでしょうか。
値にそれぞれsalt用意するとなると、容量も食いますしカラムも一つ増えてまう。

908 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:49:09 ]
crypt(3)のやり方だと、暗号文字列そのものがsalt付きだから
カラム数的には増えることはないですね。

'1234567890'.crypt('$1$abcdefgh$')
#=> '$1$abcdefgh$7KT./yJ8ONoodnM9VUtMO0'

'1234567890'.crypt('ab')
#=> "ab1iBa.N.U2C6"


909 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/17(木) 21:52:31 ]
>>907
ここ参照
www.oiax.jp/rails/for_web_designers/yaml.html



910 名前:デフォルトの名無しさん mailto:sage [2008/04/17(木) 21:54:07 ]
cryptだと、暗号化済みのパスワードリストが漏れた場合に、
よくあるパスワードをその暗号化リストのsaltで暗号化して
照合することができるよね。(シャドウパスワードが考案された理由)





911 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/17(木) 21:56:05 ]
>>907
ここ参照
www.oiax.jp/rails/for_web_designers/yaml.html

912 名前:ヽ・´∀`・,,)っ━━━━━━┓ mailto:sage [2008/04/17(木) 22:07:30 ]
↑誤爆

913 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 00:10:05 ]
なんでだろう。
普通の人なら流せるがコテだとウザい

914 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 04:57:36 ]
controllersやmodelsの下に作ったクラスは誰がいつインスタンス化してるんですか?
controllerが呼ばれる毎にrailsが作ってくれてるんでしょうか?

915 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 08:51:04 ]
そうだよ

916 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:09:48 ]
呼ばれる度に作られるわけではない

917 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:14:06 ]
モデルデータのインスタンス化はfindだのcreateだのであなたが明示的にやってるはず。

クラスのロードは、基本的にはconst_missingを使ってる。


918 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:15:54 ]
>>913
名前欄がヨコ7cmくらいに伸びてるからバカにしか見えないんだよね

919 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:27:06 ]
コントローラーは呼ばれる度なのか?パフォーマンス的にどうなの?



920 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:33:25 ]
インスタンスを1回使って寿命が終わりなら、そりゃパフォーマンスは最悪だろうな

921 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 13:06:53 ]
ActionController::Base
class << self
def process(request, response)
new.process(request, response)
end
end
end

リクエストごとにここを通るのかな。



922 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:33:54 ]
馬鹿な俺にも分かりやすく…誰か・・・

923 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 13:12:41 ]
rubyとrailsをインストールしたのですがrailsのソースってどこにあるんでしょうか?

924 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 13:18:04 ]
>>923
gem envを実行して、GEM PATHSってところにリストされたディレクトリ
(たいていは1つ)のどれかの下にある

- activesupport-バージョン
- activerecord-バージョン
- actionpack-バージョン
- activeresource-バージョン
- actionmailer-バージョン
- rails-バージョン



925 名前:923 mailto:sage [2008/04/20(日) 14:59:21 ]
>>924
見つかりました!ありがとうございます。

926 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 11:16:46 ]
ActiveScaffold が

/module/aliasing.rb:31:in `alias_method': undefined method `find_full_template_path' for class `ActionView::Base'

って出て動くかない(´・ω・`)

927 名前:デフォルトの名無しさん mailto:age [2008/04/21(月) 13:26:44 ]
上にも似た質問あるけどRailsの各クラスのライフサイクルってどうなってるんですか?
Controllerなんかのクラスのインスタンスは一度作られたらサーバ停止するまで使い回しですかね?
もしそうならサーバ起動時に作っちゃった方が効率良さそうだけど。

928 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 16:53:03 ]
>>927
そんなはずはない
HTTPリクエストがくるたびに新しく作られるんじゃなかったっけ?

929 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:26:49 ]
rails本体・プラグインのクラスは最初の一度のみ
developmentだとFW以外(app+lib)のクラスはリクエストの度リロード
productionはリロードなし
だったような気がする、間違えてたら指摘してくれ



930 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:30:51 ]
>>929
それはファイルの読み込みについてだよね
インスタンスは>>928のはず

931 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:36:33 ]
>>930
そうそう、今その事も書こうかと思ってた
Controllerのインスタンスは毎回作り直し

932 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:26:21 ]
ApplicationControllerとかまでリクエストの度にインスタンス作るってこと?
それって意味あるの?

933 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:30:55 ]
前のリクエストで作ったインスタンス変数が残ってたりするからかねぇ。


934 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:39:19 ]
つかコントローラで作ったインスタンス変数のスコープって意味不明なんですけど。
そこら辺ちゃんと書かれた本って無いよね。

935 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:44:39 ]
ビューからでも見えることの不思議なら、
あれはビューにコピーしているから。

とどこかで読んだ記憶はあるのだが、本ではなかったかも。


936 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 23:15:13 ]
ソース読め

937 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 23:36:31 ]
そういえば今日Railsのソース読んでてバグ見つけた。
喜び勇んで報告しようとしたらedgeではなおっていた。
ちっ。


938 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 08:40:43 ]
リクエストの度にインスタンス生成って…railsが遅い理由が分かった

939 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 08:56:14 ]
次にお前はリテラル評価のたびにインスタンス生成って、という



940 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 17:20:52 ]
railsでMYSQLのストアドを呼ぶのはできますでしょうか?

941 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 19:12:41 ]
railsの(というかrubyの)インスタンス生成が
どれほどコストのかかるものか実際分からないから
それで遅いとか重いとかなんかピンとこないなぁ

プロセスのメモリ上にFWのクラス定義ロードされてりゃ
そうでもなさそうな感じはするけどやっぱそうでもないのかね
Javaとかはちゃんとインスタンス使い回しとかしてるんだっけ

あとrubyはオブジェクトをダイナミックに書き換えれ過ぎるので
特にrailsみたいなリフレクションしまくりな作りのを元に
インスタンス使い回すとしたら色々不具合出そうなイメージあるなぁ

942 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 20:15:33 ]
>>941
同意

調べずにインスタンス生成=重い、と思い込むのもアレだ。
インスタンスは動的に変えられるから使い回すのは危険。

943 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 21:24:59 ]
FWって何ですか?

944 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:33:23 ]
・ファイアウォール
・フォワード
・フレームワーク

さてどれでしょう?

945 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 22:41:01 ]
ファイアワイア

946 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 23:13:53 ]
どう考えても馬鹿げてる
全てのリクエストにインスタンス生成なんでしょ?重いとか以前じゃないの
それともある規模以上のweb開発に対してははなっから諦めてる仕様なの?
スクリプト言語なんてそんなもんなのかね

947 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 00:40:28 ]
べつにコントローラオブジェクトの生成なんかたいしたコストじゃないよ。
HTTPリクエストを解析する方がよっぽどコストが高い。
特にRailsのHTTPパラメータ名は複雑だから、解析が重い。
あとはViewだよね。RailsのViewは遅すぎる。

>>946
Java厨乙
Javaでも最近のフレームワークはリクエストのたびにインスタンス生成して使い捨ててるよ。
えらそうなこというのはちゃんと調べてからにしときな


948 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 02:21:28 ]
>>946はバカにしても>>947も何の検証も出さずに断定してるのがなぁ
とりあえず重い派も重くない派も実際どれくらいのコストなのか測定してからにしてくれないと水掛け論にしかならないのだが

949 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 02:58:10 ]
>>948
検証しなくても、HTTPリクエストパラメータの解析が重いことぐらいわかるだろ
だいたい、なんでコントローラのインスタンスを生成するのが重いと思うんだ?その根拠は何よ?
ビュー層はログ見てりゃ遅いのがわかるだろ



950 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 03:24:03 ]
>>949
どっちにしても何もなしじゃ重いのかたいしたことないのか判断できないと言っている

951 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 10:25:55 ]
全てRoRのせいにして他のチューニングをしないヤツが多すぎる。

大規模がどの程度の事指すのかしらんが、
キャッシュやらクエリチューニングやら、Apache・DBチューニングで
Railsでもある程度の規模は十分捌けるぜ。

大規模になればなるほど、インスタンス生成云々よりも
DB回りの方がよっぽどボトルネックになると感じた。


952 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 11:08:37 ]
次スレ
pc11.2ch.net/test/read.cgi/php/1207425569/

953 名前:デフォルトの名無しさん [2008/04/23(水) 13:16:04 ]
システム側適時作成するから入力してほしくない値のvalidateってどうやればいいでしょうか?

954 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 14:45:05 ]
教えてください。submit等で次のアクションをしページ移動したとき、
ブラウザの戻るボタンで戻るとページが空白になります。再表示ボタンを押すと
「情報を再送信しないとページを更新できません」とでますが、
これって回避できないのでしょうか?そもそもブラウザの戻るボタンで正常に戻るのは
構造上むりなのでしょうか?

955 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 14:47:33 ]
>>954
Webの基本から勉強しなおせといいたいが
誘導しておく。

△▲ WebProg 初心者の質問 Part17 ▼▽
pc11.2ch.net/test/read.cgi/php/1204462146/

956 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 16:50:58 ]
単純にファイルを指し示す場合は
#{RAILS_ROOT}/public/sample.html
のように書けますが、
actionを呼ぶURLに対してRAILS_ROOTのような変数を使うことは出来ないでしょうか?
#{RAILS_ROOT}/app/controllers/アクション名
#{RAILS_ROOT}/アクション名
いずれも無理でした。

957 名前:954 mailto:sage [2008/04/23(水) 17:06:38 ]
>>955
ありがとうございます。さっそく行ってきます。

958 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 18:58:39 ]
>>956
何がしたいのかイマイチ分からないけど、
ファイルじゃないから呼べないぞ。。。

RAILS_ROOTはPathの文字列だしな・・・

params[:action] とか url_for :contoller => 'a' ,:action => 'b'
じゃダメかい?

それかボタンからアクション実行したいなら
<%= button_to 'これはボタン' , {:contoller=> 'foo' , :action => 'baa'},{} %>

で実行できるが・・・


959 名前:デフォルトの名無しさん mailto:sage [2008/04/23(水) 21:43:08 ]
>>953
Model.new(params)に入れられても使わずプログラムで設定する
という目的なら attribute_protected

違うならそう書いて。

>>956
何がしたいのか分からんが、
@template.prepend(append)_view_pathとか(名前失念)で
テンプレートファイルを探す場所を増やすことは出来る。




960 名前:953 mailto:sage [2008/04/23(水) 22:28:14 ]
>>959
ありがとうございました、その通りです _ _ > attr_protected

961 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 17:09:52 ]
ttp://weblog.rubyonrails.com/2008/4/23/agile-web-development-with-rails-3rd-edition
3rd edition キター

962 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 17:29:53 ]
>>961
お、Rails2対応か。

翻訳版マダー?

963 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 17:32:11 ]
RailsによるアジャイルWebアプリケーション開発 第2版 - 2007/10/26
Agile Web Development With Rails - 2006/12

ぺでふ版買おうかな。。

964 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 21:06:19 ]
>>962
原書ベータの話なのに……



965 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 22:12:23 ]
link_to 'Show', @item
の動作の仕組みをおしえて。第2引数にモデルオブジェクトを指定するだけで、
なんでURLがわかるの?Object#to_url とかでも定義されるの?

966 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 23:04:15 ]
>>965
link_toのURL部分がItem < ActiveRecord::Baseだと結局は
item_url(@item)
が呼ばれる。(see PolymorphicRoutes#build_named_route_call)

あとはNamed Routesの仕事だが、ルーティングの実装は読むのがめんどいな。


967 名前:デフォルトの名無しさん mailto:sage [2008/04/24(木) 23:24:59 ]
>>966
ちょーさんくす
item_url(@item) が @item でもいけるようになっているのね
短く書けるのはいいけどわかりづらい






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<240KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef