Ruby on Rails のスレ が
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/04/06(日) 04:59:29ID:???消えたのか?
流行ってないのか
死亡
0118116
2008/05/09(金) 13:39:24ID:???(define-key rails-minor-mode-map "\C-c\C-p" 'rails-lib:run-primary-switch)
あとは、Rail2.0でファイル拡張子に.html.erbを使うようになったのに対応して
rails.elの中でこんな設定をしておくとよい
(defvar rails-templates-list '("html.erb" "erb" "rhtml" "rxml" "rjs" "haml" "liquid"))
0119nobodyさん
2008/05/09(金) 14:47:55ID:???select a.id, a.name, o.name
from accounts a, organizations o
where a.organization_id = o.id
order by o.name;
というSQLを発行するにはどうしたらいいですか。
Account.find(:all, :include[:organization])
でOK?
0121nobodyさん
2008/05/09(金) 21:14:37ID:???さんくす
> 変数取り込むならちゃんとエスケープしてからやれよ?
こういう心遣いができるおまえは優秀なエスパー
これからも地球の平和を守ってくれ
0122nobodyさん
2008/05/09(金) 22:30:39ID:???今SQLインジェクションアタックが盛んだからじゃね?
ttp://www.tokumaru.org/d/20080502.html
普通は
:conditions => ['hoge = ?' , params[:hoge]]
のようにすればいいけど、
フルSQLとかに変数使いたい時は
Hoge.find_by_sql("select * from hoges where hoge = #{connection.quote(params)}")
がオヌヌメ
ttp://pirochin.blogspot.com/2007/08/activerecordbaseconnectionquote.html
0123nobodyさん
2008/05/10(土) 01:12:35ID:???0124nobodyさん
2008/05/10(土) 01:35:58ID:???http://www.example.com/~foo/redmine/ で動かしたい場合には
httpd.confをどのようにすればよいのでしょうか
DocumentRoot /usr/local/apache2/htdocs
RailsBaseURI /~foo/redmine
とすると
Passenger error #2
Passenger thought that the Rails application's "public" directory is "/usr/local/apache2/htdocs/~foo/redmine".
となり、必ずDocumentRoot配下を見るようになってしまいます。
0125nobodyさん
2008/05/10(土) 01:50:18ID:???Linux上でApache2.2.8+mod_rails(passenger-1.0.5)です。
0126nobodyさん
2008/05/10(土) 01:55:26ID:NOkob+Vnおぉ!mod_railsの情報か!!
ほとんどhttpd.confに書くんだっけ?
app/controller/foo/
app/views/foo/
って内部にサブディレクトリ切るんじゃダメだろうなぁ・・・
0127nobodyさん
2008/05/10(土) 01:55:53ID:???/~foo を本来のファイルシステム上の絶対パスで書いたらどうよ?
0128124
2008/05/10(土) 02:10:09ID:???Apache上でRuby on Railsアプリケーションを動かす/Passenger(mod_rails for Apache)の利用
ttp://redmine.jp/tech_note/apache-passenger/
の通りにやるとサクッと動きました。
>>127
RailsBaseURI /home/foo/public_html/redmine と書いて ~foo/redmineにアクセスすると
Apacheがrailsを認識してくれず、普通のindexリスト表示になってしまいます。
0129nobodyさん
2008/05/10(土) 23:24:32ID:???~fooの絶対パスを/foo に Alias して
http://example.com/foo/redmine
じゃだめなん?
0130nobodyさん
2008/05/12(月) 12:32:39ID:MkPAtgFM0131nobodyさん
2008/05/12(月) 19:17:18ID:???ないと思います。GoogleAppEngineでサポートされることを祈っておいてください。
質問なんだけど、migrationで、add_columnするときに、:null=>falseを指定できますか。
データが1行もないときはできると思うけど、すでにデータが入っているテーブルに:null=>falseつきでadd_columnしたいんです。
あるいはadd_columnしたあとにfind(:all).each でデータを設定してから、:null=>falseを追加するとか。
0132nobodyさん
2008/05/12(月) 19:40:44ID:???change_column という大変便利なものをみつけてしまいました。
add_column :items, :newcolumn, :string
Items.find(:all).each {|item| item.newcolumn = '...'; item.save! }
change_column, :items, :newcolumn, :string, :null=>false
でいけました。
0133nobodyさん
2008/05/13(火) 10:33:55ID:???> Items.find(:all).each {|item| item.newcolumn = '...'; item.save! }
なんとなく、めちゃくちゃ効率悪そうな気がするのは俺だけ?
0134nobodyさん
2008/05/13(火) 11:06:43ID:???:default => false 指定するのじゃダメだろうか?
カラム追加なら最初はデータ無いだろうし、
必要なデータは後でバッチかupdate文で更新するみたいな。
最悪、execute('alter add_column文')で無理やり書くとか。
結果出てるのに茶々入れてすまん
0135nobodyさん
2008/05/14(水) 10:42:18ID:4b0MQpYRInfoQ: HerokuとMorph AppSpaces:Railsホスティングの新しい二つのソリューション
http://www.infoq.com/jp/news/2008/04/heroku-hosting-morph-appspaces
0136nobodyさん
2008/05/14(水) 21:53:25ID:ToATEiN60137nobodyさん
2008/05/16(金) 12:30:03ID:???テスト結果が大量にある時にどこでエラーが起きたか、コンソール表示だけだと
わかりにくいんですが、見やすく整形してくれるツールのようなものは
ありますか?
Story Runnerも試していて、プレゼンみてると
ttp://blog.davidchelimsky.net/files/BDDWithRspec.RubyConf.2007.pdf
の38ページ(Spec Framework)にそれっぽいものが出ていて使ってみたいんですが
リリースされているんでしょうか?
0138nobodyさん
2008/05/16(金) 14:26:01ID:???それはRspecとか関係なく、MacのGrowlじゃなかろうか
ttp://blog.tkmr.org/tatsuya/show/361-rails-macosx-rspec-zentest-growl
さぁ今すぐMacを買いに行くんだ
UTF-8 コードのRailsアプリはWinで開発よりMacの方がいいよなぁ・・・
0139nobodyさん
2008/05/17(土) 00:27:54ID:???RSpecバンドルの機能ですね。
とりあえず標準の範囲なら、spec/spec.optsで
--format specdoc
--backgtrace
と書くとか。
0140nobodyさん
2008/05/17(土) 00:28:14ID:???0141nobodyさん
2008/05/17(土) 15:18:33ID:???やっぱり楽。
それまでは
WindowsでVMwareとかは重くて断念。
WindowsでLinuxにログイン、が長かったけど、
いろいろ調査するのに個人ごとに環境があった方が良いって事になって結局Macに。
セミナーとかでも講演してる人、Macが多かったし。
デザイン組み込みとかの時も、
デザイナから上がってきた画像を目で見て確認するのに、
Macのopenコマンドとか、QuickLookがかなり便利。
0142nobodyさん
2008/05/17(土) 15:27:47ID:???RadRails様々なり。
0143nobodyさん
2008/05/17(土) 15:39:08ID:???うちも最初は同じような環境だったんだけど
Linux(UNIX系)でしか動かないソフトの使用が決定になって断念した。
0144nobodyさん
2008/05/17(土) 18:47:59ID:???puttyでsshで繋いで作業
eclipse使ってたときもあったけど重くて嫌になった
win上で開発するのはお勧めできない
>>141
vmwareは重いけどcolinuxは結構軽いよ
そりゃ金があるならmacに越したことはないけど
0145nobodyさん
2008/05/17(土) 21:18:51ID:???最近はMacOSに興味あるなー
0146nobodyさん
2008/05/17(土) 22:05:37ID:???いろいろなところで補完が効くのがいい。
0147nobodyさん
2008/05/17(土) 22:14:09ID:???C2D1.8G mem1Gのマシンじゃギリギリだ・・・orz
mem2G以上はやっぱほしいよな
0149nobodyさん
2008/05/17(土) 22:48:53ID:???Linuxサーバに繋いでvi, emacsでやってる。
補完にはあまり頼らないなぁ。
0150nobodyさん
2008/05/17(土) 23:04:09ID:???Netbeans 6.1は結構軽くなってると思うけどなあ。
あとRuby機能のみ入ったのをダウンロードするのが軽くて良いと思う。
0151nobodyさん
2008/05/17(土) 23:14:55ID:???補完機能は要らないけど、Grepやエクスプローラー機能は秀逸だし
使ってみよう。�d
>>149
XGAモニタでIDEはオススメできないw
0152nobodyさん
2008/05/18(日) 00:37:58ID:???0153nobodyさん
2008/05/18(日) 01:40:08ID:???0154nobodyさん
2008/05/18(日) 01:45:34ID:???0156nobodyさん
2008/05/18(日) 21:32:48ID:???具体的には alter table ... とか select setcount() とかを実行したいです。
>>154
同意
0157nobodyさん
2008/05/19(月) 00:20:37ID:???ActiveRecord::Base.connection.execute
0159nobodyさん
2008/05/19(月) 11:06:18ID:???:select が効かないんですけどなんとかなりませんか?
0160nobodyさん
2008/05/19(月) 14:17:14ID:8IiAUL/0すごい参考になりました。
みなさんけっこう工夫されてますね
0161nobodyさん
2008/05/19(月) 15:08:45ID:???’’の中はSQLだから
hoge = Foo.find :all ,
:select => 'foos.id , baas.name',
:include => [:baa]
みたいにどのテーブルのどのカラムって指定しないと無理じゃね?
0162nobodyさん
2008/05/19(月) 15:35:10ID:???さんくす
ActiveRecord::Base.connection.executeを使わせてもらいました。
0163159
2008/05/19(月) 16:39:27ID:???テーブル名.カラム名って書いてもやっぱりだめでした。
必要なカラムの値のみ取得したいのですが、全カラムの値が返ってきます。
:includeを使うと SELECT * でSQLが作られるんでしょうかね?
0164159
2008/05/19(月) 16:42:39ID:???お礼言ってなかった。
サンクス。
その後、:include ではなく :joinsを使えば :selectオプションが効くのはわかりました。
0165nobodyさん
2008/05/19(月) 18:27:04ID:???あるスクリプトを実行し終わったらirbに入るようなこと
できますか?
要するにirbでいろいろ操作したいんですけど、
そこにいたるまで初期化命令が沢山あるんで、
require 〜
require 〜
require 〜
をした状態でirbのシェルに入りたいのです。
0166165
2008/05/19(月) 18:40:47ID:???0167nobodyさん
2008/05/19(月) 19:00:21ID:???:include はモデル間でのリレーション
:joins はSQLでのリレーション
:select区指定するような、動的な場合は:join使うとか
モデルにそれ用のメソッド追加するといいかもしれない
0168nobodyさん
2008/05/19(月) 19:20:30ID:???id integer primary key auto_increment,
title varchar(256) not null,
price integer
);
というテーブルがあったとき、Book#price は nil を返す可能性があります。
そこで
class Book < ActiveRecord::Base
alias _price price
def price
_price || 0
end
end
みたいなかっこわるいことしてるんですけど、もっといい方法があれば教えてください。
0169nobodyさん
2008/05/19(月) 19:28:31ID:???price integer not null default = 0 ,
migrateだと
default => 0 ,:nil => false
のような指定じゃダメか?
0171nobodyさん
2008/05/19(月) 23:47:19ID:???0173nobodyさん
2008/05/20(火) 10:41:32ID:???IRB.start
でirbのプロンプトが出せるので、そこまでの準備はご自由にという感じだな。
0174nobodyさん
2008/05/20(火) 13:01:56ID:???正式リリースが楽しみです。
0175nobodyさん
2008/05/20(火) 14:35:29ID:???でirbみたいなのが起動しますが、自分のスクリプトの中でrailsアプリを読み込むにはどうしたらいいでしょうか。
#!/usr/bin/env ruby
require '....'
MyModel.find(:all).each do |model|
puts "#{model.id},#{model.name}"
end
みたいなのが作りたいです。
0176nobodyさん
2008/05/20(火) 15:57:56ID:???#!/usr/bin/env ruby
require File.dirname(__FILE__) + '/../config/boot'
require RAILS_ROOT + '/config/environment'
# 以下で好きなことをする。
みたいな感じ。
0177nobodyさん
2008/05/20(火) 22:08:58ID:???f.select :foo, :class=>"foo", :onclick=>'alert()' とかしてもだめでした。
0178nobodyさん
2008/05/21(水) 00:15:59ID:???f.select :foo, {}, :class => "foo", :onclick => 'alert()'
かな。
ヘルパメソッドへのオプションとHTMLを作るときのオプションを
それぞれhashで与える必要があり、なおかつ両方とも省略可能なので、
hashが2つあることがわかるように書く必要があるはず。
0179nobodyさん
2008/05/21(水) 03:54:23ID:???呼び出す側で to_i か
def price
read_attribute_before_type_cast(:price).to_i
end
みたいな?
0180nobodyさん
2008/05/21(水) 16:38:32ID:???もしやっている人のホームページとかわかればお願いします。
0181nobodyさん
2008/05/21(水) 21:02:42ID:???0182nobodyさん
2008/05/21(水) 22:27:20ID:???ことごとく落ちました。
0184nobodyさん
2008/05/23(金) 10:09:55ID:MzFkkhDrRuby on Rails対応のIDEを使用する場合、NetBeans、Eclipse(プラグインを
追加)など複数の選択肢がありますが、今のところデファクトスタンダードと
呼べるものは存在しません。そこで本稿では、共通の基準に対して複数のIDEを
比較し、各製品の特徴と長所、短所を明らかにします。またRuby on Railsによる
開発を始めるにあたって現時点で最も使いやすいIDEを選定します。
http://codezine.jp/a/article/aid/2482.aspx
0185nobodyさん
2008/05/24(土) 23:44:37ID:ojuOd+8vWeb開発をなめるな。
0186nobodyさん
2008/05/25(日) 02:46:51ID:???0187nobodyさん
2008/05/25(日) 03:39:36ID:fA12GUeB>>186
最近phpに切り替えているらしい。
Railsのせいかどうかはわからないけど、twitterの中の人はrailsのせいにしたがってる
0188nobodyさん
2008/05/25(日) 04:54:54ID:???Railsが多くなってるみたいね。
最近できたエンジニア向けサイトや映画のサイトもRailsだった。
0189nobodyさん
2008/05/25(日) 11:37:31ID:OXIuJTVX0191nobodyさん
2008/05/25(日) 14:02:45ID:???0192nobodyさん
2008/05/25(日) 14:16:23ID:???0193nobodyさん
2008/05/25(日) 14:26:15ID:???0194nobodyさん
2008/05/25(日) 14:47:17ID:???0195nobodyさん
2008/05/25(日) 14:48:13ID:???0196nobodyさん
2008/05/25(日) 18:11:22ID:fl6HSoNb0197196
2008/05/25(日) 18:12:08ID:???挙動が違うようなので質問させていただきました _ _
0198nobodyさん
2008/05/25(日) 18:41:52ID:???self.test = "test" で見るのは @test ではないよ。
0199nobodyさん
2008/05/25(日) 18:42:46ID:???ソースがCodeReposで公開されてた。
ttp://ruby-users.jp/
0200nobodyさん
2008/05/25(日) 20:23:34ID:???0202nobodyさん
2008/05/26(月) 00:18:56ID:???0203nobodyさん
2008/05/26(月) 02:25:21ID:???ブログでノウハウ出してる所も多いから
ここで聞くってなかなか無い・・・
質問スレになるのはアレだが、イマイチ盛り上がりに欠けるよなぁ・・・
なんというか、寂しい
0204nobodyさん
2008/05/26(月) 06:20:41ID:dq0EoCgj探し方が悪いのか一番見つかりそうで見つからないです。。
0205nobodyさん
2008/05/26(月) 11:50:04ID:???0207nobodyさん
2008/05/26(月) 14:07:36ID:???こんなもんだと思うけど
まあブログに書くほどでもなかったりとか書きにくかったりする
泥臭いtipsとかバッドノウハウとか
実際のところXXXの問題はどうやってるのかとか
そういうのがもっとあればなーとか
2chなんだから良い意味でもっと書き捨てて書き殴れよ的な
0208nobodyさん
2008/05/26(月) 14:56:05ID:???最近Rails本の出版ブームだけどこの動きは何かね?裾野が広がってるとみていいんだろうか
それから2への完全移行を検討してるんだけどみんなの意向具合はどう?俺は既存プラグインの動作確認、ページネーション問題が解決しそうにないので後半年は待つしかないと思ってる
自分のスキル不足も原因だけどね
0209nobodyさん
2008/05/26(月) 15:17:25ID:???とっつきやすくなって始めてくれる人がいれば嬉しいな。
Rails2移行は結構難航するらしいけど、
とりあえず、まずは、warning出ないようにしていく事からはじめて行けば
楽らしいぜ。
Rails2化もそうだけど、Ruby1.8.7正式リリースも今後あるだろうし、
スケジュール取るならそれからでもいいと思うぜ。
0210nobodyさん
2008/05/26(月) 18:38:28ID:???売れると思ったから出した。公開はしていない。
0212nobodyさん
2008/05/26(月) 20:30:51ID:zf9CrWER質問させてください。
ActiveRecordを使って、複数のレコードをCreateして、複数レコードを同時にコミット
(save)したいのですが、どうしたらイイですか?
hoge1=Hoge.new(val=1)
hoge2=Hoge.new(val=2)
hoge1,hoge2を同時にsave(コミット)したい。
0213nobodyさん
2008/05/26(月) 20:50:15ID:???トランザクションを張るといいと思うよ。
Hoge.transaction do
〜略〜
hoge1=Hoge.new(val=1)
hoge2=Hoge.new(val=2)
end
0214nobodyさん
2008/05/26(月) 22:27:05ID:zf9CrWERHoge.transaction do
for i in 0..3 do
Hoge.create(:val=i)
end
end
こんな使い方もおkですか?
0215nobodyさん
2008/05/26(月) 22:44:08ID:???OK
トランザクションの中でfor文廻しても問題茄子!
でも、for文は変数のスコープルールが変わってて、
for i in 0..3 do
Hoge.create(:val=i)
end
のあとで
p i
のように変数が参照できちゃうから注意な。
普通は繰り返し変数と同名な変数は書かないが
■ このスレッドは過去ログ倉庫に格納されています