【Ruby】Ruby on Rails Part7
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2009/04/30(木) 23:07:27ID:???http://pc11.2ch.net/test/read.cgi/php/1224838013/
■参考サイト
<英語>
本家: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/
■参考スレ(プログラム板)
Rubyについて Part 35
http://pc12.2ch.net/test/read.cgi/tech/1238194350/
Ruby 初心者スレッド Part 27
http://pc12.2ch.net/test/read.cgi/tech/1238632943/l50
0628nobodyさん
2009/07/10(金) 21:20:41ID:???DBにもできるが個人的にはクッキーが好き
0629nobodyさん
2009/07/10(金) 23:54:40ID:???当時のchangelogのこれかな。
Sessions typically contain at most a user_id and flash message;
both fit within the 4K cookie size limit. <snip>
If you have more than 4K of session data or don't want your data to
be visible to the user, pick another session store.
Cookie-based sessions are dramatically faster than the alternatives.
セッションにはせいぜいUIDとflashくらいしか入っていないのが典型。
これはクッキーの4K制限に収まる。
4K以上入れたいなら他のストアを使おう。
クッキー使うと他より断然速いよ。
0630605
2009/07/11(土) 00:14:10ID:???ありがとうございます
いつも疑問に思うのですが、コントローラーのメソッドAから
コントローラーのメソッドBが呼ばれることは少ないけど、
一方、モデルのメソッドCからモデルのメソッドDが呼ばれる
ことは多々あると思うんです。
それじゃあ、もしCがトランザクションを開始したかったら、
あらかじめDがトランザクションを開始していないことを
ソース追いかけて確認しないとダメなのでしょうか?
それに、Dだってさらに別のメソッドを呼んでいるかも…
C++でいう nothrow みたいに宣言できないのでしょうか?
notransaction とか?
0631nobodyさん
2009/07/11(土) 00:26:45ID:???・Ruby自体は習得済み
・インストールの方法をつらつらとコマンド並べて解説したりするのはいらない
・Webアプリの経験は無い
・HTMLは分かる
・1系を使う予定は無い
日本語じゃThe Ruby Wayがいいと思ったけどSimply Railsって良いのかな?
あんまし英語難しいのは勘弁だが洋書が良いなら有りかなとも思ってきた。
Agile Web Development with Railsとかもどうなんだろ?
0632nobodyさん
2009/07/11(土) 00:35:57ID:???http://guides.rubyonrails.org/
は駄目かしら。
0633nobodyさん
2009/07/11(土) 09:06:59ID:rxtHjZBVwindows osよりlinuxの方が不都合が少ないとかなんとか
0634nobodyさん
2009/07/11(土) 09:41:45ID:9PZL7n+00635nobodyさん
2009/07/11(土) 09:42:08ID:???0636nobodyさん
2009/07/11(土) 10:22:08ID:???ror作者はマカだったかな?
運用は要求レベル次第。動けば良いなら好きなのでおk。
0637nobodyさん
2009/07/11(土) 10:58:16ID:???0638nobodyさん
2009/07/11(土) 12:33:28ID:???無難にUbuntuでいいんじゃないの?
インストール簡単だし、デスクトップも一番洗練されてる。
sudo apt-get install ruby1.8 rubygems1.8
sudo gem install rails
だけで開発環境できちゃうし。
WinやMacと比べても拍子抜けするほど簡単。
0639nobodyさん
2009/07/11(土) 13:57:49ID:???0640nobodyさん
2009/07/11(土) 15:46:08ID:???ruby -Ku script/server
して文字コード指定しても立ち上がる mongrel 1.1.5のエラーメッセージがSJISになってしまうのですが、
これ何故なんでしょうか?
コマンドプロンプターには都合はよいと思うのですが、強制する理由(というか仕組み)がわからない…
UTF-8前提のIDEとかから立ち上げると、激しく化けたりして困る
0641nobodyさん
2009/07/11(土) 15:47:42ID:???Windows に vmwareでUbuntu入れるか、andLinuxかcoLinuxか、Portable Ubuntu入れるか
って、前も書いたようなキガス・・・
0642633
2009/07/11(土) 18:00:12ID:???vmwareでubuntuを使うようにします
0643nobodyさん
2009/07/12(日) 22:19:47ID:???オレが作ったアプリ軽く5Mオーバーだったw
無料じゃ仕えねぇ-w
0644nobodyさん
2009/07/12(日) 23:37:57ID:???0645nobodyさん
2009/07/12(日) 23:48:20ID:???ここはRailsのスレなのに、PHPの話を持ち出しても意味がないだろ。
PHPなんか使いたくないから、Rails(Ruby)を使ってるんだよ。
0646nobodyさん
2009/07/13(月) 03:35:00ID:Bzbq9kj30648nobodyさん
2009/07/13(月) 18:12:22ID:???rakeだか、rspecだか遅いrails絡みのコマンドを早くするコマンドがあったはずなんだけど、
忘れてしまった…
どなたか覚えていませんか?
後ろに立ち上げておく類のものだった気がするんですが・・・
rake 高速化、rspec高速化とかでぐぐっても出てこない(´・ω・`)
0649648
2009/07/13(月) 18:15:39ID:???dRubyですた。サンクス…
0650nobodyさん
2009/07/13(月) 23:04:16ID:???運用開始前に予め画像を入れておきたいのですが
script/runnerでPhoto.new({"uploaded_data" => open('hoge.jpg')})
するとattachment_fu.rb:343でuploaded_data= undefined method '[]'
してしまいます。
同じようなことをしたことがあるという方、おりましたら教えてください。
環境は
linux
ruby 1.8.7
rails 2.3.2
0651650
2009/07/14(火) 00:39:43ID:???0652nobodyさん
2009/07/14(火) 01:15:56ID:???ttp://www.oreilly.co.jp/books/9784873114163/
Railsで企業システムを扱うというのがテーマのようだ
さすがに基幹システムは無理だろうが、
部門システムくらいはJAVAのシェアを少し奪ってほしい
0655nobodyさん
2009/07/14(火) 07:55:01ID:???kwskも何も、今からxreaはねぇだろ。クラック以前に
ドメイン契約しても無償サーバ空いてないこと多いし、
鯖がダウソしてるのに放置、メールサーバは海外で
spam鯖指定されてたり、慢性的に落ちてたり。
0656nobodyさん
2009/07/14(火) 10:19:54ID:???プログラムを作るお前らには PHP で十分
0657nobodyさん
2009/07/14(火) 10:22:03ID:???どうしてそんなふうに他人を見下せるんだ?
金銭的な余裕のあるなしとRubyで開発をすることの間には何の関係もないのに。
0659nobodyさん
2009/07/14(火) 11:56:28ID:???年数千円、数万円が払えないのは負け犬。
0660nobodyさん
2009/07/14(火) 13:39:52ID:???0661nobodyさん
2009/07/14(火) 13:50:39ID:???数万も払えないヘボは PHP 使ってろ。
0662nobodyさん
2009/07/14(火) 14:01:37ID:???0663nobodyさん
2009/07/14(火) 14:06:43ID:???0664nobodyさん
2009/07/14(火) 14:19:55ID:???自前で有るから、構築技術の無い >>653 = >>656 = >>659 = >>661 = >>663
みたいに無駄な金を使わずに品質の良いものが提供できている。
0665nobodyさん
2009/07/14(火) 14:21:16ID:???0666nobodyさん
2009/07/14(火) 14:27:04ID:???数万円じゃ済まないことに気付け、低能。Ruby ユーザってこんなのばかりなの?
0667nobodyさん
2009/07/14(火) 14:37:40ID:???多少人気が出るときついのだが。
格安サーバーで事足りるのはうらやましい気がするが、少し気の毒でもあるな。
そういうことが分からないということはサービスを公開したことなんてないのだろう。
0670nobodyさん
2009/07/14(火) 14:46:12ID:???サービスすらはじめられない人が何を言っているんだ…
0671667
2009/07/14(火) 14:55:41ID:???書けば書くほどというのはおかしいだろう。
ID出ないから仕方ないが。あと連投ならやめれ。
0672nobodyさん
2009/07/14(火) 14:57:29ID:???0674nobodyさん
2009/07/14(火) 15:01:55ID:???PHPでもRailsでもどっちでもいいよ
俺は提供してるサービスなんて無いから無理
0675nobodyさん
2009/07/14(火) 15:06:13ID:???ばかか
0676nobodyさん
2009/07/14(火) 15:12:53ID:???一度、無料サーバで PHP でも Perl でも何でもいいからはじめてみろ。
月刊数十万アクセスは捌けるし、数千円から 1, 2 万円くらい行けるぞ。
0678676
2009/07/14(火) 15:16:07ID:???月刊→月間の間違えな。
1 年で 5 万円以上稼げれば
格安サーバ借りて、さらにアクセスさばければ
2, 3 倍稼げたりするよ。
ここでは URL 貼れない。
アフリを潰すような奴もいるし。
0679nobodyさん
2009/07/14(火) 15:17:13ID:???月に数十万もアクセスが来てくれるようなサイト、コンテンツを作れるかどうかが
問題なわけだが
0680nobodyさん
2009/07/14(火) 15:25:49ID:???そもそも Web サービスがはじめられないわけだが
0681nobodyさん
2009/07/14(火) 15:25:59ID:???アップローダ?ブログ?SNS?それとももっと先進的な何か?
0682nobodyさん
2009/07/14(火) 15:39:19ID:???Ruby ユーザって人格障害者多いね。
そんなことを気にしないで自分が作りたい
Web サービスを無料サーバを使ってどんどん作りなよ。
0683nobodyさん
2009/07/14(火) 15:44:25ID:???自分の好きなのや、興味のあるものを。
非 IT やオタクじゃないのをターゲットにすると
アフリをクリックする傾向あるね。
まずは無料で Web サービスをいろいろ作って
試行錯誤して経験値を積むのが重要。
PHP/Perl で作るのに飽きたので Rails で、
と思ったけど無料サーバのない現状にゲンナリ。
0684nobodyさん
2009/07/14(火) 15:45:49ID:???ただWebアプリで儲けてるって人がどんなサービス提供してるか気になってさ
で、どんなサービスなの?
0685nobodyさん
2009/07/14(火) 15:51:17ID:???0686nobodyさん
2009/07/14(火) 16:06:14ID:???みなさん使いますか?
どのバージョンならいいですか?
0687nobodyさん
2009/07/14(火) 16:15:12ID:???長期間運用すると、ユーザによって
バージョン変えるな、新しくしろ、と大変そうw
あと Passenger って何百日安定稼働!ってないよね。
毎日 cron で早朝リブートしてる…。
Passenger がもっと安定して、
省メモリ、高速になったらしい Rails 3.0 からが
運用側としてはいいのかなぁ。
0688nobodyさん
2009/07/14(火) 16:19:09ID:???PHP/Perl は Ruby に比べて互換性の問題が小さい。
あと、必要メモリも 1/2 〜 1/3 で済むのでサーバ提供者は無料提供可能。
なので現実的に Ruby 1.9 & Rails 3.0 が安定してからの提供になるんだろうな。
0689nobodyさん
2009/07/14(火) 16:53:09ID:???>バージョン変えるな、新しくしろ、と大変そうw
>それ以外に Ruby が 1.8 か 1.9 か、という問題があるよね。
各バージョン毎の無料サーバーが立ってて同時に複数借りられれば
問題なさそうですね!
0690nobodyさん
2009/07/14(火) 17:05:18ID:???> 問題なさそうですね!
> 問題なさそうですね!
0693nobodyさん
2009/07/14(火) 18:20:35ID:???0694nobodyさん
2009/07/14(火) 18:35:28ID:???裏を返せば市場が広がってるということなんで嬉しい話。
0695nobodyさん
2009/07/14(火) 18:42:42ID:???0696nobodyさん
2009/07/14(火) 18:55:19ID:???0697nobodyさん
2009/07/14(火) 20:04:16ID:???半角の前後にスペースがきっちり入ってるからわかりやすいな。
定期的に荒らすのはなんかのバイオリズムか?ちゃんと薬は飲めよ。
ぶつぶつ一人で会話して、ヒッチコックのサイコかよ。
0698nobodyさん
2009/07/14(火) 20:34:01ID:???無料じゃないと困る様なへぼサイトならみんなと同じphp使ってろと。
儲かる仕事作れないのに、高額のマク強請るマカみたいなスレだ。
0699nobodyさん
2009/07/14(火) 20:43:15ID:???それはスルー緑
0700nobodyさん
2009/07/14(火) 21:16:19ID:???初心者スレも本スレもこれで判定してたのに
おまえ・・・
0701nobodyさん
2009/07/15(水) 01:55:13ID:???無料サーバがない≠市場がない では?
無料鯖がないのは、Rails を動かす場合、
Passenger なり Mongrel なり、一アプリにつき一ポート使うからだと思う。
だからVPSなど、有料でroot権限もらえるとところだったら
Passenger や Mongrel を好きなだけ動かせるだろ。
(VPSだと、安いプランだとメモリが大変だけど)
Java だって Servlet を動かすには Tomcat などが必要だが、
一 Tomcat につき 一ポート使うから、無料サーバではやりにくいだけの話で、
Java による web アプリは、全然マイナーな技術ではないよね。
(レンタルサーバでやるようなものではないけど)
一方 perl や PHP は Apache の中に組み込まれるから(mod_perl、mod_php)、
各ユーザが PHP アプリを動かしてもポートは新たに消費しない。
だから無料鯖でも使われるわけで。
※
レンタルサーバで、あらかじめ Passenger がサーバにインストールされていて、
そのユーザのホームに .hoge (任意のファイル名) を置いておくと、
毎朝の root の cron で httpd.conf に RailsBaseUri の行を追加してくれ、そのあとは
http://{サーバ名}/~{レンタルサーバのアカウント名}/ で Rails アプリが動く、
なんてサービスがあったら、レンタルサーバでもポートを増やさずに
Rails アプリを動かせる、なんてことができていいかも。
0702nobodyさん
2009/07/15(水) 02:21:05ID:???Webな管理画面があればいいですよね。
Passengerけっこう落ちるって噂ですが。
1. フレームワークがでかいから潤沢なメモリが必要
2. Rubyがそもそもメモリを食う
3. PerlやPHPではでかいフレームワークつかわないから軽いだけ
どれなんですか。
勘で1かと思ってます。
0703nobodyさん
2009/07/15(水) 02:50:07ID:???0704nobodyさん
2009/07/15(水) 03:31:36ID:???4. 情報不足とそれに関連した使用者のスキル不足
5. まだあまり枯れてない
0705nobodyさん
2009/07/15(水) 08:10:03ID:???0706nobodyさん
2009/07/15(水) 08:14:05ID:???>Tomcat につき 一ポート使うから
無知乙。mod_jkとかAJP 1.3てな単語でまずググレ。
javaが無料サーバでやらないのはVMがメモリ食いすぎるのと
javaでは何でも出来てしまうから「共有サーバー」で導入しないだけ。
0707nobodyさん
2009/07/15(水) 10:21:44ID:???0708701
2009/07/15(水) 10:30:33ID:???>>Tomcat につき 一ポート使うから
> 無知乙。mod_jkとかAJP 1.3てな単語でまずググレ。
Java は長い間やってきているから、そこら辺は把握しているつもりです。
mod_jk とか mod_proxy_ajp をつかって外部には Apache の port 80 で公開していたとしても、
mod_jk は内部で動かしている Tomcat の port 8009 にスルーするだけだから、
結局、各ユーザごとの Tomcat のプロセスの起動が必要で、
それごとに 8009 (AJP を受け付けるポート)の bind が必要だと思いますが?
あとひとつの Tomcat に、各ユーザの webapp をデプロイする方法も考えられるが、
Passenger は、RailsBaseUri ごとに、動くユーザを変えられるが、
Tomcat は変えられない。
$CATALINA_HOME/webapp/foo アプリは foo ユーザ、/bar は bar ユーザで動かす、
ということができない。
> javaが無料サーバでやらないのはVMがメモリ食いすぎるのと
> javaでは何でも出来てしまうから「共有サーバー」で導入しないだけ。
ここは同意する。
0709nobodyさん
2009/07/15(水) 11:44:11ID:???0710nobodyさん
2009/07/15(水) 13:29:02ID:???perlやphpでも巨大なライブラリ使う事も出来るけど、もうそれはapacheごと重くなっても構わないって割り切りがあるから。
実際、phpとかperl使ってるサイトは重いし。
rubyは小賢くmod_rubyで重くなるほうに実装しなかっただけ。共用鯖で、はた迷惑になるのを覚悟でどんどん重い実装をしていけば、レン鯖でも通用するとは思う。
0711nobodyさん
2009/07/15(水) 16:51:55ID:???じゃあapacheは何故80番だけで多ユーザに対応出来るんだ?
MySQLも3306のみ、postgresも5432だけで多ユーザに
対応しているぞ。そこを考えろ。長いっつっても無駄に
長いとVBプログラマー(笑)と変わんなくなるぞ。
お前さんの根本的な間違いは、Tomcatは1ユーザに1ポート
与える必要がある、と考えていること。80から8009に流そうが、
外部に公開するのは80番だけでよいから、利用者はそこで
Tomcatが動いていると意識する必要はない。それと
TomcatはTomcat上でのマルチユーザー(Not UnixUser)に
十分対応している。なんでPassengerと比較するんだ?
共有PHP鯖でマルチユーザのWEBアプリが十分動いてるだろ。
0712nobodyさん
2009/07/15(水) 16:57:05ID:???ま、机上の空論で無理無理と考えてるから前進出来ない。
0713nobodyさん
2009/07/15(水) 20:16:06ID:???PHP使うとかマゾすぎんぞ
0715nobodyさん
2009/07/16(木) 01:33:33ID:???0716nobodyさん
2009/07/16(木) 15:59:36ID:4+d1h2nCPHP moduleの場合は企業向けプランだったり。
0717nobodyさん
2009/07/16(木) 16:12:37ID:???OLだった頃、会社で働いていた日本に超詳しいベルギー人が言ったことに納得してた。
日本文化は身内受けの凝り性文化だそう。
外国文化に負けまいとしているのではなく、
世に意図的にインパクトを与えようとしているのでもなく、
今ここにいる同じ価値観を共有する仲間からの喝采を浴びたいと考える。
その結果、同じものを志す者同士の「これすごいだろ、おもしろいだろ」合戦が始まり、
そこで生み出される物が自然と研ぎ澄まされていく。
でもその競争は、敵対的なものではなく、お互いを尊敬しあいながら、静かに深く進行していく。
そしてある日、偶然目撃した異文化出身の人間(外国人)から、
それがすごいものであることを知らされる。
ほとんどの日本人はその日が来るまで、自分たちが作り上げた物がすごいものとは知らない。
もろもろの伝統文化、芸能、電化製品、アニメ、他、みんな同じパターンで世界に広まっていった。
だから、日本がここまで発展してきたのも必然的なものだし、
この精神が衰えない限り、これからも日本は誰に頼まれることもなく、
知らないうちに勝手に世界にインパクトを与え続けていくだろうと。
0718nobodyさん
2009/07/17(金) 11:19:51ID:???0719nobodyさん
2009/07/17(金) 19:20:40ID:???0720nobodyさん
2009/07/17(金) 20:55:05ID:???そうだよな。
CGIでもまともに動く軽量フレムワがあればいい。
0721nobodyさん
2009/07/17(金) 22:00:28ID:???0722nobodyさん
2009/07/20(月) 17:22:47ID:???request.remote_ip などrequestの情報をコントローラーではなく、モデルから取得したいのですが、
どうしたものでしょうか?
コントローラー側から、引数で渡すしかないでしょうか?
モデル側からコントローラーのインスタンスにアクセスする手段がある?とか(そうするとテストがやっかいそうですが…)
Rails 2.3.2です。
0723nobodyさん
2009/07/20(月) 17:28:07ID:???それはありますよね。今だとSinatraでしょうか?
そもそも、Railsと比べるべきは、PerlやPHPなどの言語ではなく、フレームワークですよね
CakePHPとか十分重いですよね。もちろん、Railsよりもデプロイ等楽ですが、
無料レンサバのphpはCGI版という現実…
無料レンサバでRails動かしたいという人は、passengerついてるDreamhostのお試し期間で試してみたら、どうかな
Dreamhostも共有サーバーだけど、なかなかなしんどさで無料鯖でRailsやりたいという願望の非現実感が味わえますw
0724nobodyさん
2009/07/20(月) 17:46:00ID:???0725nobodyさん
2009/07/20(月) 18:25:13ID:???引数で渡すのが一番簡単だと思う。
あるいは、ApplicationControllerあたりでグローバル変数にrequestをセットするbefore_filterを定義とか。
0726nobodyさん
2009/07/21(火) 02:59:52ID:???おれも3日間いったが。
Javaから転校してきてまだ3ヶ月なんだけど、
Rails→超有名
Sinatra→次に有名、もはや珍しくない
まではわかったけど、ほかにも有名なものってあるの?
Java だと web フレームワークはたくさんあって選ぶのに困るぐらいだけど
(もちろん、フレームワークによって得意とする局面はいろいろあるけど)、
Ruby の web フレームワークもそんな状況なのか、
それとも Rail と Sinatra ぐらいなのか?
とりあえず merb と ramaze はRuby会議で知った。
0727nobodyさん
2009/07/21(火) 05:47:32ID:???板違いで申し訳ないんですが、以前から疑問に思っていたので便乗します。
> TomcatはTomcat上でのマルチユーザー(Not UnixUser)に
> 十分対応している。
というのは、tomcat-users.xmlで管理するという意味ですか?
だとするならば、それはUnixユーザー並みに、ユーザーごとに分離独立で
管理できるのですか?
それから、
> javaでは何でも出来てしまうから「共有サーバー」で導入しないだけ。
ということは、例えば、webapps下の別ユーザーが管理するアプリの
ディレクトリ下を書き換えたりできてしまう可能性がある、
ということですか?
上記等から、レンタルサーバ屋さんは基本的に1ユーザ1Tomcatであるべき、
と考えているということなんですか?
■ このスレッドは過去ログ倉庫に格納されています