Ruby on Rails のスレ が
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/04/06(日) 04:59:29ID:???消えたのか?
流行ってないのか
死亡
0797nobodyさん
2008/08/20(水) 10:29:51ID:???ruby script/server -p 80
のコマンドを実行し、ポート80を使っていたapacheを停止させたところhttp://localhost/testでも接続できるようになりました。
これはapacheの代わりにmongrelが動いているということでしょうか。
初歩的な質問ですが、よろしくお願いします。
0800nobodyさん
2008/08/20(水) 16:51:06ID:???だけど、上手くアクセス制限する方法は、ありますか?
相手は動的IPなので、アドレスで制限することは出来ません。
ActionController::RoutingError で、404.htmlがレンダリングされること
になるんですが、RoutingErrorをカウントして閾値を超えたら一定時間ban
みたいなことをしたいのですが、方法が分かりません。
0802nobodyさん
2008/08/20(水) 21:28:23ID:???AC::Base#rescue_actionをオーバーライドしてRoutingErrorだったら
DBに記録したりbanしたりすればいいんじゃないだろうか。
解除の方は定時処理で一定時間経過しているものをクリアする。
0803nobodyさん
2008/08/21(木) 15:59:46ID:???上手く実装することが出来ました。ありがとうございます。
0804nobodyさん
2008/08/21(木) 18:35:44ID:???super呼ぶ必要がある、はず。
0805nobodyさん
2008/08/24(日) 15:45:14ID:VqgKvUuyPassengerだと鯖管理者がその都度VirtualHostを切るしかないですかね?
mod_fcgidだったら.htaccessで後はご自由に、って
できたのですが、時代に逆行しているような気がして。
何かよい方法あれば教えてください。
0807nobodyさん
2008/08/25(月) 00:18:17ID:???0808nobodyさん
2008/08/25(月) 16:36:18ID:???mongrelを使っているのですが、public/javascripts/iepngfix.htcの読み込みが
css内のbehavior経由でできません。
IEツールバーにはAccess is deniedと怒られます。
パーミッションは644、ファイルパスを直接ブラウザに入れると普通にDLできます。
なぜだかわかりません。どなたかご教示願います。
0809nobodyさん
2008/08/25(月) 16:45:11ID:???0811nobodyさん
2008/08/25(月) 19:41:08ID:???そもそもcss内から呼び出せるものなのか?
0812nobodyさん
2008/08/26(火) 22:58:05ID:???0813nobodyさん
2008/08/27(水) 10:59:43ID:???REXMLのDoS脆弱性
ttp://www.ruby-lang.org/ja/news/2008/08/23/dos-vulnerability-in-rexml/
Railsユーザは一応パッチ当てとけ
0814nobodyさん
2008/08/27(水) 21:31:53ID:???「漏れのRailsアプリではREXML使ってないからいいやー」
と思っている奴は、それ勘違いだからな。
0815nobodyさん
2008/08/27(水) 21:37:32ID:???require 'rexml/document'
してる所結構あるよ
script/consoleで
サンプルコード再現確認したけど、
見事に固まってワロタwwww
動いてるRailsアプリにPOSTしちゃダメだぞ!!
0816nobodyさん
2008/08/27(水) 21:52:17ID:???Content-TypeがxmlなデータをPOSTされると、
actionpack-2.1.0/lib/action_controller/base.rb の
@@param_parsers[Mime::XML] が :xml_simple なので、
POSTボディ解析に XmlSimpleクラスが使われる。
XmlSimple自体はactivesupport-2.1.0/lib/active_support/vendorにある。
こいつがREXML使ってるから、やばいPOSTデータで死ねるんだな。
0817nobodyさん
2008/08/27(水) 22:04:05ID:???XMLのPOST許可って外部APIの受け口とか、他鯖のデータ受け口だし、
画面上から気づく所が無いのが唯一の救いだよな。
(まぁ外部APIや他鯖連携使ってるって分かるようなサイトだと入り口見つかるのも時間の問題だけど・・・)
久々の祭りでちょっと面白かった
(ちら裏)
個人的にはxml_simpleは速度がピュアREXMLより遅いから嫌いw
0818nobodyさん
2008/08/29(金) 17:36:06ID:???どうすればいいのでしょうか。
<% form_for @foo do |f| %>
<%= f.bar_field %><%# ←これを追加したい %>
<% end %>
0819nobodyさん
2008/08/29(金) 17:46:11ID:???○入力フィールド
でした
0820nobodyさん
2008/08/29(金) 20:38:09ID:???「独自の」ってのがいまいちわからないんだけど、textだとかcheckboxのような種類のことを言ってる?
それとも、@fooのプロパティのこと?
0822nobodyさん
2008/08/31(日) 19:38:00ID:???>>818
その通りです。
例えば元から用意されているtext_fieldを拡張したい時などに、
どうすればRails2.*の作法に従えるかわかりません><
0824nobodyさん
2008/08/31(日) 19:47:42ID:???拡張加えて、
def ext_text_field
のようにヘルパー内でメソッド作っちゃえば?
個人的にCSRF対策に
form_tag呼び出されたら、自動的に
トークンのhiddenタグが呼び出されるように
form_tag拡張してるYO。
(Rails2のCSRF対策はちょっと弱いからw)
0825nobodyさん
2008/08/31(日) 20:30:27ID:???0826nobodyさん
2008/08/31(日) 20:40:15ID:???の流れを一度正常にやってから
確認画面にBackとかで戻ると、フォーム期限切れの画面出るけど、
そこでF5押したら普通にPOSTが効く
セッションが生きてる間は、
Railsが生成したトークンが有効になってしまうんよ。
個人的に一連のこういう流れは、ワンタイムトークン使うべきだと
思うんだ。
あくまでも個人的なオナニーだから、使わなかったから
何だって訳じゃないけどw
0827nobodyさん
2008/08/31(日) 21:35:24ID:???CSRF対策としては別に問題ないのでは。
0828nobodyさん
2008/09/04(木) 23:19:54ID:???どうやってやるのでしょうか。
「Hoge.find(:first, :order=>"id desc").id」で
一応は動いているのですが、ちょっと気持ち悪いです。
select last_insert_id() とか select lastval()のような
追加された値を明示的に取得する方法があったら知りたいです。
(この際、SQL直書きでも構いません)
0829nobodyさん
2008/09/04(木) 23:29:29ID:???hoge.save
hoge.id
0830nobodyさん
2008/09/05(金) 00:10:47ID:???出来ました&動きました。
……そーか、こんな単純なのか。
調べても出て来ないわけだ……。
0831nobodyさん
2008/09/05(金) 04:08:40ID:???俺も知らなかった時はsql書いてたw
0832nobodyさん
2008/09/05(金) 08:18:54ID:???0833nobodyさん
2008/09/05(金) 08:19:40ID:???かもしれない)ので、orderで現在の最大値を持ってきたらあぶないと思う。
0834nobodyさん
2008/09/05(金) 12:30:32ID:???それってIDじゃ無いと思うw
0835nobodyさん
2008/09/05(金) 13:26:29ID:???destroyした後、createしたら同じidが振られた。
0836nobodyさん
2008/09/05(金) 15:07:44ID:???間違ってるような。
0838nobodyさん
2008/09/05(金) 21:34:50ID:???0839nobodyさん
2008/09/05(金) 22:49:26ID:???ISAMテーブル/BDBテーブルでauto incrementカラムの最大値を持つレコードが削除されると、
その値は再利用されるそうな。
mysql> create table samples (id tinyint auto_increment, primary key (id)) engine=ISAM;
mysql> insert into samples values(126);
mysql> insert into samples values(NULL);
mysql> select * from samples;
+-----+
| id |
+-----+
| 126 |
| 127 |
+-----+
2 rows in set (0.01 sec)
mysql> delete from samples where id = 127;
mysql> insert into samples values(NULL);
mysql> select * from samples;
+-----+
| id |
+-----+
| 126 |
| 127 |
+-----+
2 rows in set (0.01 sec)
0840nobodyさん
2008/09/05(金) 23:22:39ID:???0841nobodyさん
2008/09/06(土) 02:08:21ID:???上記のようなrailsが吐き出す画像パスのquery_stringを消す方法はあるのでしょうか?
0843nobodyさん
2008/09/06(土) 10:46:23ID:???テーブルを作っていないといけないんですか?
直接作ったDBにレコードを挿入しようとした時にエラーになり
マイグレーションで作ったDBにはうまくいったので疑問に思いました
0844nobodyさん
2008/09/06(土) 11:18:48ID:???ENV['RAILS_ASSET_ID'] = ''
>>843
直接造ったテーブルがRailsの規約に沿っているか、
Railsのほうでテーブル名やプライマリキーの設定を変えるかすれば使える。
0845nobodyさん
2008/09/06(土) 17:17:41ID:???そうなのかなぁ、テーブル名とプライマリーキーの設定はモデルでしたんだけど・・
何か設定が正しくなかったのかな
あと、そのプライマリーキーが数値じゃなくてもOKだよね?
0847nobodyさん
2008/09/07(日) 13:35:50ID:???そうですか、それが原因だったみたいですね
今、既存のテーブルを使いたいんですが、そのテーブルの主キーがvarcharだから困りましたね
そういう場合でRailsを使ったシステムを作りたいなら、どうしたらいいでしょうか?
やっぱりテーブル構造の変更を行うしかないでしょうか?
0848nobodyさん
2008/09/07(日) 13:45:46ID:???0849nobodyさん
2008/09/07(日) 16:08:45ID:???primary keyとそのテーブルの主キーだけの
0850nobodyさん
2008/09/07(日) 17:57:32ID:???元のPKはUNIQUEに変更、では駄目?
0851nobodyさん
2008/09/07(日) 21:03:10ID:???>>850 が今のところ一番わかりやすく、現実的かなと思いました
直接SQLを発行すれば一応テーブルの変更はいらない・・・ですよね?
でもRailsのアプリでそれはダサいかな?
0852nobodyさん
2008/09/07(日) 23:28:42ID:???SQL直書きだって決してダサくはないよ。
AR::Base.findのオプション(:selectとか:joinとか:groupとか)で対応できる範囲なら
そうしておいたほうがRubyレベルでいじりやすいだろうけど。
0853nobodyさん
2008/09/08(月) 22:49:53ID:???これのREADMEにはRails1.2.6以上で動くと書いてあるのですが
実際に1.2.6で使ってみると「authenticate_with_http_basicがない」
とエラーになります。
調べてみると、このメソッドはRails2で実装されてるようです。
READMEが間違ってるってことでいいんでしょうか。
0854nobodyさん
2008/09/08(月) 23:13:13ID:???'Classic' (backward-compatible) version
http://github.com/technoweenie/restful-authentication/tree/classic
というのもあるようだ。
0856nobodyさん
2008/09/09(火) 11:33:25ID:???たとえば select * from users の結果として取得したrowはたとえば ["1", "name", "2000-01-01"] になっていますが、
それを [1, "name", Time.mktime(2000, 1, 1)] に変換してくれている箇所です。
自力でおっかけていたのですが、力つきました。
0857nobodyさん
2008/09/09(火) 13:52:30ID:???0858nobodyさん
2008/09/09(火) 16:57:06ID:???0859nobodyさん
2008/09/09(火) 18:01:17ID:???active_record/connection_adapters/abstract/schema_definitions.rb:631あたりだね。
RubyのクラスとDBの型の対応は
active_record/connection_adapters/mysql_adapter.rb:194とか見るといいよ。
0861nobodyさん
2008/09/09(火) 21:54:59ID:???テーブルに挿入いけたよ!みんな隠してたのか!
それとも俺の環境がおかしいのか
0863nobodyさん
2008/09/10(水) 18:49:59ID:???require File.dirname(__FILE__) + "/../../config/environment"
loop do
# ああだこうだ
sleep(10)
end
こんなデーモン的スクリプトを使っているのですが、development環境の
場合にModelクラスなどを自動的にリロードさせるようにすることは
できますか?
0864nobodyさん
2008/09/11(木) 00:30:26ID:???Dependencies.clear
ActiveRecord::Base.reset_subclasses
Class.remove_class(*Reloadable.reloadable_classes)
みたいなことをすればいいぽい。
細かいことはReloadableのドキュメントを読んでくれい。
0865nobodyさん
2008/09/11(木) 10:38:04ID:???0866nobodyさん
2008/09/11(木) 12:34:31ID:???actionpack-2.1.0/lib/action_controller/dispatcher.rbの
cleanup_application
rails-1.2.6/lib/dispatcher.rbの
reset_application!
rails-?.?.?/lib/console_app.rbの
reload!
あたりを参考にしました。
1.2と2.0でやり方変わってるので注意ぽい。
0867nobodyさん
2008/09/11(木) 13:48:44ID:???form_tag_helper.rbの
extra_tags_for_formに
content_tag(:div, token_tag, :style => 'margin:0;padding:0')
と言うのがあってだな・・・
0870nobodyさん
2008/09/14(日) 17:27:51ID:???sessionが増えると発生します。
Railsだとよくあることなんですか?
0871nobodyさん
2008/09/14(日) 17:36:01ID:???0872nobodyさん
2008/09/15(月) 01:19:22ID:???ない
0874nobodyさん
2008/09/16(火) 20:32:22ID:xPoLLpKz「ruby script/...」とか「rake db:migrate」とかを実行すると、
非常にとんでもなくまたされます。正直、とんでもなく遅いです。
この現象はwindows環境ではみんな同じなんでしょうか?
もっとスクリプトの実行を速くする方法は無いでしょうか?
0875nobodyさん
2008/09/16(火) 21:15:57ID:???その上でやると早いお
0876nobodyさん
2008/09/16(火) 21:28:47ID:???0877nobodyさん
2008/09/17(水) 00:08:32ID:NExepFrS仮想OS(linux)上でrailsを使うと、RailsのIDE(NetBeansやAptana)
をWindows上で使っているので、データーを共有できないんです。
Windows上でRailsを使って開発している人は、
こんなに遅いのをみんな耐えているのかな?
「ruby script/generate scaffold ...」の実行に何で20秒もかかるんだ?
0878nobodyさん
2008/09/17(水) 00:09:13ID:???デザイン組み込みとかだるいし。
値段はともかく、営業がギリギリの納期で仕事取ってくるので苦労してる。
プロジェクト間に時間的余裕が無い感じ。
一人プロジェクトを平行して回すとかになると辛い。
以上、チラ裏でした。
0880nobodyさん
2008/09/17(水) 02:06:49ID:???windowsで開発してるけど、遅いよ。
linuxと比べると数倍遅いよね。
Core2Duoにすると、幾らかマシになるよ。
0881nobodyさん
2008/09/17(水) 09:47:34ID:???CoFSでマウントすりゃいいよ。
共有できるから、WinでRadRails使って開発、
ローカル鯖はandlinux上のLinuxで動いてるお
ここら参考に
ttp://d.hatena.ne.jp/wadap/20080602/1212419216
ttp://hyamada.ddo.jp/hiki/hiki.cgi?andlinux
0882nobodyさん
2008/09/19(金) 09:02:47ID:???どうすれば防げますか?
0883nobodyさん
2008/09/19(金) 09:10:02ID:???0884nobodyさん
2008/09/19(金) 09:49:33ID:???http://www.itmedia.co.jp/enterprise/articles/0803/04/news008.html
0885nobodyさん
2008/09/19(金) 14:07:33ID:???:BindAddressのデフォルトが0.0.0.0(すべてのデバイス)なので、
newの引数で指定してループバックデバイス(127.0.0.1)だけを見るとか。
0886nobodyさん
2008/09/19(金) 16:40:43ID:KktuWVpS馬場道明死ね
0887nobodyさん
2008/09/20(土) 13:08:56ID:???0888nobodyさん
2008/09/20(土) 13:12:00ID:???多分 ruby script\server -b 127.0.0.1 で良いと思う。
0889nobodyさん
2008/09/21(日) 08:47:38ID:???WindowsネイティブのRubyインタプリタがトロいだけ
irb単体を起動するだけでも相当時間かかるだろ?
ターミナルのOSがWindowsだからって
Windowsのコマンドプロンプトで開発してるわけじゃないだろ?
これだから最近のMac厨は激しく困る
最新のPCでも買いなよ
0890nobodyさん
2008/09/21(日) 09:57:58ID:???0893nobodyさん
2008/09/24(水) 16:01:12ID:???ruby on railsの存在感は
cakephpに比べるとかなり落ちている。
0894nobodyさん
2008/09/24(水) 16:34:19ID:???0895nobodyさん
2008/09/24(水) 19:26:50ID:???PHP使用者が圧倒的に多いんだから、
伸びてくるのは当然だろう・・・
0896nobodyさん
2008/09/24(水) 22:36:28ID:???■ このスレッドは過去ログ倉庫に格納されています