【Agile】Ruby on rails相談所【DRY】
■ このスレッドは過去ログ倉庫に格納されています
00011
2005/06/13(月) 20:51:40ID:hOTuU4T5まだまだ、日本語の情報が少ないですが、
みんなで、意見を出し合いましょう!!
<英語>
本家: http://www.rubyonrails.org
API: http://api.rubyonrails.com/
Documents&Tutorials: http://documentation.rubyonrails.com/
<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
ActiveRecordの記事(データベースの操作):
http://jp.rubyist.net/magazine/?0004-RLR
http://jp.rubyist.net/magazine/?0006-RubyOnRails
0136nobodyさん
2005/10/01(土) 11:34:40ID:???日本にはないんじゃない?
海外でよければ
http://wiki.rubyonrails.com/rails/pages/RailsWebHosts
0137nobodyさん
2005/10/01(土) 12:15:03ID:???おお、ありがとうございます。
日本に無いのは残念ですが、リンク先で安いのを探してみます。
月$1以下であるみたいですね。
0138の
2005/10/01(土) 16:00:03ID:???render_textとは別物だけど、SikiTemplateでテンプレート内テンプレートを
実装してみますた。
テンプレート側でマージを指定するのじゃなくて、プログラム側から指定する形だから、
あんまり便利じゃない気がするけど……helperとして使えるかな?
0139nobodyさん
2005/10/01(土) 16:33:32ID:???RadRails
ttp://www.radrails.org/
ttp://dev.radrails.org/trac/
Eclipseを改造して必要部分のみのEclipseの機能+プラグインで構築された開発ツール。
機能としてはまだまだですが、ロードマップを見る限りではエディタとしてはRDTより結構いいツールになりそうな予感。
0140nobodyさん
2005/10/01(土) 20:39:44ID:???> エディタとしてはRDTより結構いいツールになりそうな予感
そのRDTをpluginとして内蔵してるんだが…
0141nobodyさん
2005/10/01(土) 22:00:43ID:f1ICNV2r自分で実装しようとしたら、つまづきまくって、全然進まん。
早くRails本の日本語訳でないかなぁ。
<案>
フォームを使う場合、入力してもらいたいデータをViewに書かなくてはならない。
つまり、ControllerとViewを同時に製作しないといけないため
ロジックのControllerばかり作成できず、思考が停止してしまう。
この例のように実装できれば、ControllerとViewが完全に分離可能。
Modelの部分を書いたら、次はとことんControllerを書いて、
誰か別の人が、Viewに @form.show_allとしておけば十分。
(例1)
Controllerで、たとえば、post_actionメソッドに
EasyForm.make( record => Person , redirect => result_action )
と書く。
(Personはpersonsデータベースを操作するActiveRecord::Baseのサブクラス。)
そして、Viewで
EasyForm.show_all
とすると、personsデータベースに相応しいフォームが表示される。
さらに、result_actionメソッドでは、
EasyForm.get_from( post_action )[データベースのフィールド名]で、フォームからPOSTされたデータにアクセスできるようにする。
(例2)フォームから入力してもらう内容に、テーブルの全部のフィールドが必要ない場合。
たとえば、時間のフィールドは、サーバー側で登録する場合。
EasyForm.make(redirect => result_action , record => Person){|record|
record.no_show( registered_time ) # personsテーブルにはregistered_timeが存在する。
record.no_necessary( phone ) # phoneデータは入力されてなくても構わない。基本は全ての項目を入力してもらう。
}
などなど。
0142nobodyさん
2005/10/01(土) 22:04:36ID:f1ICNV2r@form.show_all でなくて、 EasyForm.show_allの間違い。
別に、EasyFormオブジェクトをインスタンスにいれて、それをshowするという実装でもいいとは思うけど、
そうすると、redirectされたアクションで、そのインスタンス名を使うのが自然になってしまう。
複数のアクションからredirectされるようなアクションの場合を想定すると、
@form.show_all でなくて、 EasyForm.show_allの方がいいと思う。
誰か、ガンガレ ファイトォ*:.。..。.:*・゚(n‘∀‘)η゚・*:.。..。.:*!!!☆
0143nobodyさん
2005/10/03(月) 17:45:11ID:???負荷問題は上に挙がってたんで、載っけとく。
http://www.lighttpd.net/
ttp://www.pochi.cc/~sasaki/chalow/2005-08-30-9.html
0144nobodyさん
2005/10/04(火) 23:33:26ID:2u9D1toQに対して、誰かレスつけてよ。
別に、実装しなくていいので、案に関してでも。
0145nobodyさん
2005/10/05(水) 00:35:30ID:???例からキモの部分を抽出するのがめどい。もっと推敲してくれ
Helperの受け渡しでダメな理由は?
> EasyForm.show_all
> とすると、personsデータベースに相応しいフォームが表示される。
「相応しいフォーム」はView側が決めるの?それともControler側?
0146nobodyさん
2005/10/05(水) 01:37:20ID:???デザインを細かく決めたくなると、
view に書いていたのと同じことを controller に書くことになる。
0147nobodyさん
2005/10/13(木) 13:20:24ID:???>来年2月頃に日本語版「Agile Web Development with Rails」発行予定
ttp://shugo.net/jit/20051013.html#p01
0148nobodyさん
2005/10/13(木) 22:24:22ID:5u5g15ec0149nobodyさん
2005/10/14(金) 01:59:11ID:LJPm/GS4内容そのままじゃないだろうな。
流石に1.0Releaseの内容にアップデートして欲しいな。
0150nobodyさん
2005/10/14(金) 14:37:12ID:???でも、付録にアップデート関連の内容を追記して欲しいね。
0151nobodyさん
2005/10/16(日) 21:58:09ID:lj7h70rK既存のデータベースとかをRoRで作り替えってときって、どうなんだろう?
テーブル毎にidとかないときって find_by_sql ばっかしになりそうだし、
hoge_idみたいなリレーションがあつかえなさげだけど、別解はあるの?
0153nobodyさん
2005/10/17(月) 19:21:30ID:???待つのはいいけど、その頃には原著も改訂されるかもなぁ。
0154nobodyさん
2005/10/17(月) 20:09:10ID:???0155nobodyさん
2005/10/18(火) 02:49:31ID:YdLTFkex1.どのオブジェクトに
2.どのタイミングで
includeされてるんでしょうか??
1.Erbオブジェクトに
2.renderが実行される時に
includeされてるんでしょうか??
あと、viewの部分で、@valueとすると、
controllerの部分で、設定した@valueにアクセスできますよね。
これって、Controllerオブジェクトから、Erbオブジェクトに
値を受け渡ししてるんですか??
Erbを理解してないのか、Railsを理解していないのか、それすらわかりません。
以上の二つのことに、誰かアドバイスください。お願いしますm( __ __ )m
0156nobodyさん
2005/10/19(水) 15:30:45ID:aonV/kLo全てのプライマリキーカラム名の頭に付加する prefix のタイプを指定します。
:table_name を指定すると、Product クラスはプライマリキーカラムとして "id" の代わりに "productid" を探します。
:table_name_with_underscore を指定すると、Product クラスはプライマリキーカラムとして "id" の代わりに "product_id" を探します。
これは全 AR クラスに共通の設定になります。
実際どのくらいなのかは実物を見たわけじゃないのでよく分からんけど。
0158nobodyさん
2005/10/20(木) 01:53:05ID:???このサイト、ちょい長いけど読む価値あるよ↓
とくに「3」の後半部分(日本のメディアの姿あたりから)は必見。
韓国はなぜ反日なのか?
http://3.csx.jp/peachy/data/korea/korea.html
0159nobodyさん
2005/10/20(木) 16:32:26ID:???個人用の初期化コードを config/environment.rb に書かなくて良くなって、
plugin に書けば良いようなことをどっかで見かけたんだけど、詳しく書いてある日本語サイト、
どっかある?
っていうか、0.13.1 => 0.14.1 => RC1 の間の(特に非互換の)変更内容を日本語で全部読めるような
ところが有ったら、教えてケロ。
0160nobodyさん
2005/10/20(木) 17:15:25ID:???そんなの早く諦めて、英語に慣れた方が幸せになれるぞ。
0161nobodyさん
2005/10/21(金) 08:24:42ID:???「10分で作るRailsアプリ」すごくない?これぞRuby on Railsって感じ。
http://b.hatena.ne.jp/hotentry
http://masuidrive.jp/rails/
0162nobodyさん
2005/10/21(金) 10:51:16ID:EIX7TLVu0163nobodyさん
2005/10/21(金) 18:48:55ID:???0166nobodyさん
2005/10/21(金) 19:59:10ID:kvt7E1P5Page 1 Rubyの魅力
Page 2 Railsの魅力
Page 3 Ruby and Railsのインストール
Page 4 データベースのセットアップ
Page 5 アプリケーションの作成
Page 6 アプリケーションのカスタマイズ
0167nobodyさん
2005/10/21(金) 20:06:52ID:kvt7E1P5http://masuidrive.jp/rails/
元ネタ
http://hotwired.goo.ne.jp/webmonkey/2005/36/index4a.html
Page 1 Rubyの魅力
Page 2 Railsの魅力
Page 3 Ruby and Railsのインストール
Page 4 データベースのセットアップ
Page 5 アプリケーションの作成
Page 6 アプリケーションのカスタマイズ
0169nobodyさん
2005/10/22(土) 22:40:59ID:P1Z+fxHd「価格.com」のサイトが侵入を受け事件となりました。
このコーナーでも「価格.comのサイト侵入事件」の記事を
公開しています。さて5月24日現在、「価格.com」のサイトは
セキュリティに問題があって「SQLインジェクション」に
よる侵入の可能性が報道されました。
ここで「SQLインジェクション」について説明したいと思います。
1.インジェクションって何?
日本語の意味にすると「注入、注射」の意味です。
この攻撃方法は非常に古くからあります。古くはシステムに
備え付けのスクリプトを悪用する形でしたが、現在はWEBサイトの
CGIプログラムを利用して攻撃する方法になっています。
原理的には同じで「不正アクセス行為の裁判のゆくえ」で登場する
被告の行った行為もこれに属します。
0170nobodyさん
2005/10/26(水) 00:27:49ID:fXEFfPc+0171nobodyさん
2005/10/26(水) 23:12:33ID:8uiV8z6LControllerに対する、このPluginファイルの関係は
Viewに対するHelperファイルの関係と
等しい、って理解でOK??
0172nobodyさん
2005/10/27(木) 00:00:31ID:???http://documentation.rubyonrails.com/release_notes/rc2.html
これのこと?
というか、別にControllerに特に拘っているのではなくRails全体で使えるコンポーネントとしての
扱いになっている気がする。
0173nobodyさん
2005/10/27(木) 00:15:58ID:???配布しやすくするためのものなんですね=>plugin
0174nobodyさん
2005/10/27(木) 00:39:28ID:RCVKGanyHelperメソッド群と
Controllerで使えるメソッド全て(??)という認識は正しいでしょうか??
なんかよくわからない質問ですが、
具体的には、
Viewの部分で使えるメソッド、使える変数、というのは、
Controllerの部分で使えるメソッド、使える変数 + ヘルパーメソッド群
と考えていいのでしょうか??
0175nobodyさん
2005/10/28(金) 05:14:26ID:9cidEGit[技術]Ruby on Railsをさわる
私は仕事(ときには自宅で)もっぱらJavaをいぢって3年なんですが、去年読んでいた「軽量なJava」の作者であるBruce Tateさんが、こんなことを言ってました。
「JavaはCOBOLのようにいずれ死ぬよ」
「おいらぁ今はRubyが好きなんさぁ。とくにRuby on RailsはQuick and Cleanで、いいかんじやぁ」
との事なので、私もRuby on Rails(RoR)をいぢくり回してみたくなった。
0176nobodyさん
2005/10/28(金) 09:50:50ID:???Bruce Tate インタビュー
http://blog.bmedianode.com/2005/10/bruce_tate_.html
そもそも Ruby って対Javaのためにあるわけじゃないよねぇ
0177はじめたばかり
2005/10/28(金) 22:19:29ID:G5aWcygkdispatch.rb=>environment.rb=>boot.rbと来て
boot.rbファイル内の、
Rails::Initializer.run(:set_load_path)というところに来たのですが
このメソッドの書かれてるファイルは、
lib/ruby/gems/1.8/gems/rails-0.14.2/lib/initializer.rbに書かれているものでいいのでしょうか?
だとすると、このrunメソッドを実行すると、Initializeオブジェクトを生成されると思うのですが、
boot.rbでは、何かの変数に、Initializeオブジェクトを渡したりしている様子がありません。
どうしてでしょうか。
Initializeオブジェクトは、Singletonのようなものとして生成されているのでしょうか??
(しかしSingletonの表現は見つかりませんでした。)
0178nobodyさん
2005/10/28(金) 23:15:24ID:???(あえて RoR スレで聞いてみる)
0179nobodyさん
2005/10/29(土) 00:14:30ID:???0182nobodyさん
2005/11/02(水) 09:57:05ID:???ここみて知ったけど、プラグインって新規機能というよりlibを使いやすく
したものだったのですね。
http://d.hatena.ne.jp/secondlife/20051101/1130850457
0183nobodyさん
2005/11/02(水) 10:33:23ID:???0184nobodyさん
2005/11/02(水) 19:25:56ID:tXlUgr+MSingleしかないってことは複数テーブルでの継承がないのが残念ってこと?
どんなケースなんだろ
0185nobodyさん
2005/11/02(水) 21:24:53ID:???http://hotwired.goo.ne.jp/webmonkey/2005/36/index4a.html
を見てrailsを勉強していたのですが
ruby ./Bookmarker/script/generate scaffold Bookmark
としたところ
You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occured while evaluating nil.include?
このような表示がでました。
一体何が原因なのでしょうか?もしよろしければ教えていただけませんか?
環境は
OSX10.4.2
MySQL 4.1.15-standard
http://www.goodpic.com/mt/archives2/2005/09/ruby_on_rails_m.html
http://www.goodpic.com/mt/archives2/2005/09/ruby_on_rails_m_1.html
を見て設定しました。
よろしくお願いします。
0186185
2005/11/03(木) 02:02:28ID:???0187nobodyさん
2005/11/03(木) 11:52:10ID:???0188nobodyさん
2005/11/03(木) 17:27:44ID:???* 0.13 系 を使う
* generate のオプションにコントローラ名も書く
* パッチをあてる
のどれか。
0189nobodyさん
2005/11/04(金) 16:54:13ID:???その通りですね、すいません。
.../components/scaffold/scaffold_generator.rbの50行目
@contoroller_name = args.shift or を
@contoroller_name =
に変えたらできました。
http://subtech.g.hatena.ne.jp/drawnboy/200510を参考にしました。
0190nobodyさん
2005/11/05(土) 19:12:33ID:???2.クラスごとのテーブルを作って、ただの1対1関連として処理する
どっち?
0191nobodyさん
2005/11/09(水) 23:42:56ID:1LrDM6fDどうすれば良いですか?
0192nobodyさん
2005/11/10(木) 00:57:58ID:???0193nobodyさん
2005/11/10(木) 02:59:10ID:???どうすればいいのかわからん。
漏れに分かるのは
* コントローラーのインスタンス変数は、ビューからでも呼べる
* しかし、コントローラーのインスタンスメソッドは呼べない
* Helperモジュールを用意したら、そのメソッドが呼べるように設定出来るらしい(メンドクさそう)
というくらい。
コントローラーで簡単に、「ビューで使えるメソッド」を定義する方法教えて!
0194191
2005/11/10(木) 05:52:58ID:MPEBQJkrありがとう。しかしもっと見やすくならんかね?
0195nobodyさん
2005/11/10(木) 10:49:01ID:OPB0AgWA<%= debug(@hoge) %>
0196nobodyさん
2005/11/10(木) 19:20:44ID:8DnDViLc俺も、同じようなことが疑問。
上の質問に加えて
ビューからコントロールのインスタンス変数が使えるのは、どういう仕組み??
0197nobodyさん
2005/11/10(木) 21:36:09ID:???<% controller.hoge %>
で呼べるんじゃない?
0198nobodyさん
2005/11/11(金) 08:24:37ID:???前半の内容は >>197 の言う通りで、元の 193 の「呼べない」が間違ってる。
当然 public method に限る。action になるのが嫌なら、hide_action を利用する。
後半は、controller が自分のインスタンス変数を Binding として渡していて、
view が rhtml(ERB) の描画時にその Binding で eval してるから。
0199196
2005/11/11(金) 15:09:54ID:TbVP1FTmで、インスタンス変数の方はBindingとして渡されてるんですね。なるほど。
この話って、知ってるだけで、かなりRailsがわかりやすくなると思う。
0200nobodyさん
2005/11/11(金) 15:30:58ID:12bG+lt9$KCODE = 'u' とUTF-8にしてるのにTime#to_sが化けます(Shift-JISで出る)。
これは自前で文字コード変換しなければいけないんでしょうか?
0202nobodyさん
2005/11/12(土) 11:05:01ID:jvS6Z6BF0203nobodyさん
2005/11/12(土) 21:18:00ID:9Ty1u8Fkどのディレクトリで保存したらいいの??
public以下??
0204nobodyさん
2005/11/13(日) 08:29:58ID:???0205nobodyさん
2005/11/14(月) 04:33:43ID:???それ以外は好きな場所で。RAILS_ROOT/myfolder でも /var/aho でも。
0206nobodyさん
2005/11/14(月) 21:08:45ID:3zfzQPqErubyのバージョンが低いので…」とかいう話題はココで聞いても良いですか?
0207nobodyさん
2005/11/14(月) 21:17:08ID:ePM+28OW1.8.2で使えなかったことがある記憶が…。日付も影響してた気がするけどうろ覚え
0208nobodyさん
2005/11/15(火) 01:31:50ID:???http://manuals.rubyonrails.com/read/book/5
0209208
2005/11/16(水) 07:22:38ID:???と言う記述がありました。207さんが正解のようです。失礼しました。
http://wiki.rubyonrails.com/rails/pages/RailsOnDebianUnstable
0210nobodyさん
2005/11/17(木) 20:26:31ID:HaC941AYコマンドラインから
DocumentRoot>rails project
でDocumentRoot以下にprojectディレクトリを作り
ブラウザーで http://host/project/ にアクセスしても
Rails Welcome 画面が表示されません。
何か特別な設定が必要なんでしょうか?
0211210
2005/11/17(木) 20:35:06ID:HaC941AYhttp://host/project/public/
projectの公開ディレクトリなんですね。
0212nobodyさん
2005/11/17(木) 22:00:07ID:???=======================
ActiveRecord::Base のコンストラクタの引数に Hash を渡すと、
key が勝手に to_s される。
class Hoge < ActiveRecord::Base; end
HASH = {:foo => 'bar'}
p HASH[:foo] #=> "bar"
Hoge.new(HASH)
p HASH[:foo] #=> nil
p HASH['foo'] #=> "bar"
特に mod_ruby で定数を使いまわしているときに注意。
0213nobodyさん
2005/11/17(木) 22:54:57ID:???http://blog.hacklife.net/archives/50190377.html
0214nobodyさん
2005/11/17(木) 23:13:20ID:???0215nobodyさん
2005/11/17(木) 23:20:42ID:9hlZjAmlcontroller内で scaffold: を記述して
ブラウザでアクセスすると
Lost connection to MySQL server during query: SELECT COUNT(*) FROM users
とエラーが出てしまいます。RailsがMySQLとコネクトできていない気がするのですが、
調べる方法ってありますか?
0216nobodyさん
2005/11/22(火) 21:51:05ID:???私もそのエラーに遭遇しました。
MySQL5.0をお使いじゃないでしょうか?
4.1にすると問題なく動きました。
0217215
2005/11/22(火) 23:31:53ID:???MySQL 4.1.4
Ruby 1.8.3
Rails 0.14.3
という組み合わせでした。
216さんのうまく動いてるバージョンの組み合わせ教えていただけませんか?
0218nobodyさん
2005/11/23(水) 11:02:05ID:???ttp://www.goodpic.com/mt/archives2/2005/09/ruby_on_rails_m_1.html
「もしかしたら必要なかったDarwinPortsからRubyインストール」って
あるけど、本当は必要?不要?
できればApple提供のパッケージは汚したくないのでビビってますわ
0219nobodyさん
2005/11/23(水) 15:36:40ID:9l9bBgLXRuby on Rails 特集。合計 40P あげ。
0220nobodyさん
2005/11/23(水) 15:38:12ID:???Desgin > Design
0221216
2005/11/24(木) 09:39:22ID:???亀レスすみません。
MySQL 4.1.15-nt
Ruby 1.8.2
Rails 0.14.3
RubyはActiveScriptRubyを使って入れました。
参考にしたのはここです。
http://masuidrive.jp/rails/
RubyもRailsも触るのは初めてだったのですが、
実際に動かしてみて生産性の高さを実感しました。
まずはRubyの基本から勉強しようと思ってます。
0222nobodyさん
2005/11/24(木) 22:24:16ID:j3UE4iyY0223nobodyさん
2005/11/24(木) 22:26:30ID:???MySQL 4.1.15-nt
Rails 0.14.3
という環境で、
One click Ruby installer 1.8.2-5だとエラー、
ActiveScriptRuby 1.8.2.5だと動作しました。
本家Ruby-lang.orgのRuby 1.8.3は試していませんが、
参考まで。
なお、とりあえず動かしたい場合は、mysql_adapter.rbの
17行目
require 'active_record/vendor/mysql411'
をコメントアウトすると、One click Ruby installerでも
動きます。実に怪しいですが。
# Instant Railsでも起きた…何か環境に問題があるのかもorz
0224nobodyさん
2005/11/25(金) 00:00:23ID:???ま、見た目の問題なので、view だね。
わしがやるとしたら、Rails風に既存の module を拡張して
module ERB
module Util
def n(str)
str.to_s.gsub(/\n/, '<br />')
end
end
end
ってのを environment.rb に書いて(今は plugin に書くんだったけかな)、
rhtml ファイルで
<%=n "改行付き\nだぞこれは" %>
とかするかな。
# 適当に書いたので、typoくらいのことはツッコまんでくれ。
0225222
2005/11/25(金) 00:08:25ID:pQqZezVn普通はsessionに日本語を持たせたりしないのですかね?
>224
なるほどERBに付け加えるという発想ですね。
ヘルパーメソッド使うってのは駄目ですかね?
0226nobodyさん
2005/11/25(金) 00:50:43ID:???もう遅いと思うけど、不要。
・インストールパッケージはTigerのrubyを上書き
・DarwinPortsは(標準では)/opt/localにインストール
好きなほうを選べばいいかと。SQLite3以外のデータベースも使いたいなら
DarwinPortsを使ったほうが最終的に楽かもしらん。
0227nobodyさん
2005/11/25(金) 14:25:01ID:???これどうでした。
読まれた方おられましたら、レビューお願いします。
Software Design
http://www.gihyo.co.jp/magazines/SD
0229nobodyさん
2005/11/25(金) 17:37:46ID:???あと、Ajaxまわりもわりと解説されてる
0231nobodyさん
2005/11/26(土) 16:32:59ID:???script/server で webrick のサーバを起動して http://localhost:3000/item/ とか見ても
----
Routing Error
Recognition failed for "/Item"
----
とエラーが出てしまいます。
apache2 からだと普通に見えたんですが…。
環境は Debian sid です。
Ruby version 1.8.4 (i486-linux)
Rails version 0.14.3
Active Record version 1.13.0
Action Pack version 1.11.0
Action Web Service version 0.9.3
Action Mailer version 1.1.3
Active Support version 1.2.3
0233nobodyさん
2005/11/27(日) 17:10:16ID:PpNTAkyARailsのデフォルトテンプレートエンジンということでERBの質問です。
rubyの=begin、=endに相当する「ここから〜ここまで」なコメントアウトの仕方を教えてください
0234nobodyさん
2005/11/27(日) 21:53:20ID:???コメント前
<%
=begin
%>
コメント中は、<%% とエスケープしたほうが良い?
<%
=end
%>
コメント後
■ このスレッドは過去ログ倉庫に格納されています