【Ruby】Ruby on Rails Part9
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/02/19(金) 16:13:13ID:SpWtnpr8【Ruby】Ruby on Rails Part8
http://pc11.2ch.net/test/read.cgi/php/1252842574/
■参考サイト
<英語>
本家:http://www.rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
0002nobodyさん
2010/02/19(金) 16:14:34ID:WbFNhWFy【Agile】Ruby on rails相談所【DRY】
http://pc8.2ch.net/test/read.cgi/php/1118663500/
【Agile】Ruby on rails相談所 part2【DRY】
http://pc10.2ch.net/test/read.cgi/php/1151254378/
【Ruby】Ruby on Rails Part3
http://pc11.2ch.net/test/read.cgi/php/1170760209/
↓ム板に
Ruby on Rails
http://pc11.2ch.net/test/read.cgi/tech/1191381506/
↓
Ruby on Rails のスレ が
http://pc11.2ch.net/test/read.cgi/php/1207425569/
↓
【Ruby】Ruby on Rails Part6
http://pc11.2ch.net/test/read.cgi/php/1224838013/
↓
【Ruby】Ruby on Rails Part7
http://pc11.2ch.net/test/read.cgi/php/1241100447/
↓
【Ruby】Ruby on Rails Part8
http://pc11.2ch.net/test/read.cgi/php/1252842574/
(イマココ)
0003nobodyさん
2010/02/19(金) 16:16:16ID:WbFNhWFyhttp://www.fdiary.net/ml/rails/
0004nobodyさん
2010/02/19(金) 18:31:41ID:???こういった定期処理はどのように実装したもんでしょうか?
精度的には分単位が必要です。
こちらで考えたのは、毎分ごとにcronでscript/runnerをキック、もしくは
javan's whenever at master - GitHub
http://github.com/javan/whenever
のようなRubyGemsを使って(といっても上記は実質cronですが)
DBの該当モデルの公開フラグをオンにする、というような実装です。
ただ問題なのは、script/runnerの起動自体が重く数秒(下手すると5秒程度)CPUを占有することもあり、
こういった方法は一般的なものなのか?と思ったしだいです。
0005nobodyさん
2010/02/19(金) 18:41:23ID:WbFNhWFypoormans_cron プラグイン
http://everyleaf.com/blogs/2009/12/20/poormans_cron/
[Rails]Rails - crontabでバッチ処理を行う
crontabからscript/runnerでmodelのメソッド呼んで上げればいい
http://d.hatena.ne.jp/arcright/20090824/1251142139
MOONGIFT: ? RailsのCron処理に「Whenever」:オープンソースを毎日紹介
http://www.moongift.jp/2009/06/whenever/
0006nobodyさん
2010/02/19(金) 18:48:37ID:R+yZ5C0Ycronからはそれに触るだけ、とかすれば重さは解消
できるかもな。
0007nobodyさん
2010/02/19(金) 19:28:20ID:XnDPmidp0008nobodyさん
2010/02/19(金) 19:29:57ID:WbFNhWFyジェイソン・フリード, デイヴィッド・ハイネマイヤー・ハンソン, 黒沢 健二: 本
http://www.amazon.co.jp/gp/product/4153200115
http://twitter.com/dhh/status/9310086401
http://www.hayakawa-online.co.jp/product/books/220011.html
0010nobodyさん
2010/02/19(金) 20:15:00ID:WbFNhWFyRails 3 Beautiful Code
http://www.slideshare.net/GreggPollack/rails-3-beautiful-code-3219240
0012nobodyさん
2010/02/20(土) 00:16:46ID:???あとは、cronで起動するバッチではコントローラのアクションをnet/httpで叩くだけにして
実際の処理はコントローラ側でやるという方法もアリだと思う。
0013nobodyさん
2010/02/20(土) 15:01:40ID:???ダウンロードは出来るんだが、画像を表示しようとすると
ルーティングエラーで画像が表示できない。
ただのファイルサーバーを追加するって出来る?
publicにファイルサーバーのショートカット作っても駄目だった。
railsは2.1.2、rubyは1.8.7。
0014nobodyさん
2010/02/20(土) 15:05:28ID:3Z++wair0015nobodyさん
2010/02/20(土) 15:08:17ID:???環境やパスについてもう少し詳しく情報出さないと分かるわけないでしょ。
普通に考えれば、ファイルサーバの画像を置くパスをWebから見れるように
Apacheなどの設定をしておけば、http://ファイルサーバのホスト/画像のパス
で見れるようになるはず。
0016nobodyさん
2010/02/20(土) 15:12:43ID:zWoV3Do7public以外の場所に置いた画像をブラウザから観られるようにしたい
という意味?
0017nobodyさん
2010/02/20(土) 15:36:12ID:???001813
2010/02/20(土) 15:54:51ID:???そんな感じ。
画像の保存先を"/Volumes/gazou/upload"っていう
gazouサーバーのuploadフォルダにしたとき、
formからfile_fieldでアップロードするとファイルは
"/Volumes/gazou/upload"にアップされるんです。
indexでimage_tag("/Volumes/gazou/upload/test.jpg"
で表示しようとすると、RoutingErrorになります。
サーバーはとりあえずlighttpd使ってます。
0020nobodyさん
2010/02/20(土) 17:07:46ID:???0021nobodyさん
2010/02/20(土) 17:16:09ID:???そもそも、そのファイルサーバーの画像はブラウザから見られる?
/Volumes/gazou/upload ←これはサーバーのローカルからアクセスできる”ファイルのパス”
image_tag("/Volumes/gazou/upload/test.jpg") ←ここに指定するのは”URL”
↓
<img src="/Volumes/gazou/upload/test.jpg" />
こういうHTMLになるはずだが、
もしだよ、こんなに仮にローカルのパスがwebから全世界から簡単に見られたら、
パスワードファイルとか大事なDBのデータとかすき放題アクセスできてしまう。
だから、webサーバー、例えばapacheなどでURLとして公開するディレクトリと
ローカルからアクセスできるファイルのパスを関連付けて設定しないと、webブラウザで見られない。
・案1 ファイルサーバーの画像置き場以下をwebサーバーで公開する。
apache等使っているならやり方はググれ。スレ違い
# 簡単だがこの方法の欠点としては、ログインしてない人に画像が見られるのを防ぐといったアクセス管理がちょっとしづらい。
・案2 Railsのコントローラーでファイルサーバーからバイナリで読んで画像としてブラウザに返す
やり方シランw ググれ
>>19
まあまあw
0022nobodyさん
2010/02/20(土) 17:17:31ID:???0023nobodyさん
2010/02/20(土) 17:18:43ID:???/Volumes/gazou/upload から RAILS_ROOT/public/upload にシンボリックリンクを貼って、
image_tag("/upload/test.jpg")
でアクセスする。
こっちも簡単でいいな。
■ このスレッドは過去ログ倉庫に格納されています