【RoR】Ruby on Rails Part11
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/12/11(土) 10:58:56ID:???【Ruby】Ruby on Rails Part10
http://hibari.2ch.net/test/read.cgi/php/1282991262/
■参考サイト
<英語>
本家:http://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/
http://twitter.com/dhh
http://www.loudthinking.com/
0607nobodyさん
2011/05/23(月) 17:50:36.66ID:tsYc05juまぁ、見たいものをコントローラでインスタンス変数に代入しておくしかないかなぁ。
特定の名前があれば<%= debug... %>するようにレイアウトに書いておくと楽になるかも
しれず。
0608nobodyさん
2011/05/24(火) 01:00:42.23ID:???みたいなのよく見かけるんだけど、何がうれしいの?
0609nobodyさん
2011/05/24(火) 14:35:49.12ID:???rails3を使っているのですが、ググってもrails2の方法しか見つかりません
0610nobodyさん
2011/05/24(火) 14:44:00.36ID:???0611nobodyさん
2011/05/25(水) 00:56:40.61ID:???selectを使ってリストを表示しページを作成してのですが、作成した後のページではリストで選んだ文字が数字で評されてしまいます
どうにか解決方法はないでしょうか?
0612nobodyさん
2011/05/25(水) 01:22:33.66ID:???0614611
2011/05/25(水) 13:40:06.66ID:???http://www.dotup.org/uploda/www.dotup.org1667817.jpg
一枚目のtitleの部分でselectを使って表示は出来るんだけど、ページを作った後2枚目のように数字で表示されるんです
0615611
2011/05/25(水) 14:04:55.37ID:???_form.thml.erbばっかり弄ってて、index.html.erb等をいじるのを忘れてますた(´・ω・`)
0616nobodyさん
2011/05/25(水) 15:13:14.13ID:???0617nobodyさん
2011/05/25(水) 19:21:07.95ID:???undefined local variable or method `map' for #<ActionDispatch::Routing::Mapper:0x7351c70>
というエラーが出たので調べるとroutes.rbが悪いということまではわかったのですが、中身を見てもどこが悪いかわかりません。
このエラーが出る前に
NO route mehtod〜
とエラーが出たためroutes.rbに
map.connect ' ', :controller => 'titles'
と追加しました。
どうやったらエラーが取れますか?
0618nobodyさん
2011/05/25(水) 19:38:34.80ID:???mapって2系までのやり方だけど、3系使ってるんじゃないだろうな
0619nobodyさん
2011/05/25(水) 23:49:50.25ID:???0620nobodyさん
2011/05/26(木) 00:28:45.92ID:TGrKohNEroot :to => 'titles#index'
じゃね?
0621nobodyさん
2011/05/26(木) 00:33:09.86ID:TGrKohNEroot を書いたけど、RESTと関係ないルーティング規則の基本はmatchね。
routes.rbにコメントがうざいほどいっぱいあるから分かると思うのだが…
0624nobodyさん
2011/05/27(金) 00:31:58.96ID:???0625nobodyさん
2011/05/27(金) 00:37:41.84ID:XqNKV9VA0627nobodyさん
2011/05/27(金) 01:53:49.01ID:???0628nobodyさん
2011/05/27(金) 03:08:55.33ID:???0629624
2011/05/27(金) 13:47:15.27ID:???Showing C:/work/rubygems-1.7.2/rails/bbs/app/views/titles/show.html.erb where line #16 raised:
Missing partial pages/from with {:locale=>[:en, :en], :formats=>[:html], :handlers=>[:rhtml, :rxml, :builder, :erb, :rjs]} in view paths "C:/work/rubygems-1.7.2/rails/bbs/app/views"
Extracted source (around line #16):
13: <% end %>
14: </ul>
15:
16: <%= render 'pages/from' %>
17:
18: <%= link_to 'Back', titles_path %>
エラーはこんな風に出ます
0630nobodyさん
2011/05/27(金) 14:46:57.65ID:jUE8v2Ew0631nobodyさん
2011/05/27(金) 15:03:38.25ID:???<p>
<h2><%= @title.title %></h2>
</p>
<% i = 0 %>
<ul>
<% @title.pages.each do |page| %>
<b>Name:</b><i><%= page.name %></i> <b>E-mail:[</b><i><%= page.mail %><b>]</i></b>
<br>
<%= simple_format(page.coments) %>
<%= hbr @msg %>
<% end %>
</ul>
<%= render 'pages/from' %>
<%= link_to 'Back', titles_path %>
showの中身はこうなっています
0632nobodyさん
2011/05/27(金) 15:39:36.32ID:???しかも正解くさいし
0633nobodyさん
2011/05/27(金) 15:43:54.41ID:???ごめんなさい
見落としてました
0634nobodyさん
2011/05/27(金) 20:39:53.52ID:???プライマリキーを嘔吐インクリメントにするのかなと思ってググッってみたら、
そうする理由は「面倒くさいから、これでいいのだ(キリッ」という、低知能な理由ばかり(笑
「このDBサーバーは、こういうテーブルの設計とSQLの組み立てが一番パフォーマンスが優れいている」という
考えは完全に無視してるわけね(笑
こういう現実を見てると、Web開発入門者にとって、一番初めの地雷は、フレームワークなのかな
と思ってしまう。
過疎サイトばっかり担当してる低レベルエンジニアには無縁の話だと思うけどね。
実際、どんでもない高アクセスサイトを扱っているエンジニアはフレームワークを
そのまま使っているなんてことはなくて、重い部分はカスタマイズして使ってるわけですよね。
0635nobodyさん
2011/05/27(金) 21:15:01.19ID:???理由は消費するバイト数が小さく、しかも一定だから。
反論するなら理由も書けよ
ちなみにオートインクリメントは重複しない値を取得するためのもので、
パフォーマンスには直接関係ない。
さらにRailsでいえば、別に数値型のid列を主キーにする必要もない。
そうしなきゃいけないと思い込んでたなら、お前が無知なだけ。
加えて、複合キーより単一キーの方が圧倒的にプログラムしやすくバグが出にくい。
あらゆる点でバカ丸出し
0636nobodyさん
2011/05/28(土) 03:39:31.29ID:???それを幸せというべきか、ハマりによって成長する機会を失った可哀そうな存在という
べきかは俺には分からんが…
0637nobodyさん
2011/05/28(土) 10:48:43.58ID:???どっちが優れているかの議論って以前はもっとあった気がする
どっかいいサイトないかな
0638nobodyさん
2011/05/28(土) 11:43:36.51ID:???>「面倒くさいから、これでいいのだ(キリッ」
これは十分採用の根拠になり得る。
極限にパフォーマンス追求したり、超大規模なサービスならばRailsなんて使わないし。
0639nobodyさん
2011/05/28(土) 14:17:32.61ID:???0640nobodyさん
2011/05/28(土) 14:35:44.43ID:???0641nobodyさん
2011/05/28(土) 17:59:07.51ID:???http://ronspace.cocolog-nifty.com/blog/2006/09/post_900f.html
サロゲートキーと複合主キー | DBFlute
http://dbflute.sandbox.seasar.org/ja/manual/topic/dbdesign/surrogatekey.html
0642nobodyさん
2011/05/28(土) 21:29:32.67ID:???その場の雰囲気がものすごく微妙になるんだからよ
本人の自覚がないから余計むかつくわ
0643nobodyさん
2011/05/28(土) 23:17:11.25ID:???html弄って納入してる様なノリ。表示に問題あるなら気づいた時点でまた金取って修正すればいいじゃ内的な。
10年稼働とか普通にあってミスが無い様に細心の注意を払う業務システムとは考えが異なる。
ツイタも近視点ノリでrorで発進したもの人気が出て来て捌けずrorから乗り換えてるしねえ。作り直す手間が無駄過ぎる。
0644nobodyさん
2011/05/28(土) 23:24:09.87ID:???ぐぬぬ
0645nobodyさん
2011/05/29(日) 00:16:57.29ID:???0646nobodyさん
2011/05/29(日) 01:32:15.08ID:???PC系は10年もあったら「定番ミドルウェア」どころかアーキテクチャから変わってる
というか>>643のいってる「ノリ」ってテストと監査ができてないだけじゃね
0648nobodyさん
2011/05/29(日) 03:09:21.58ID:???0649nobodyさん
2011/05/30(月) 00:38:12.18ID:???ある程度成功して金ができた時点で金をかけてじっくり作成
何も間違ってないよな
0650nobodyさん
2011/05/30(月) 01:58:03.50ID:???0651nobodyさん
2011/05/30(月) 15:42:42.07ID:???selectの部分を特定の人には見えないようにする時はどうしたらよいですか?
知りたいのは見えなくするという部分です
0652nobodyさん
2011/05/30(月) 15:48:05.74ID:1dtasSlP<select></select>
<%- end -%>
特定の人の判断はあるはずなのでそれ書いてね。
0654nobodyさん
2011/05/30(月) 16:36:51.47ID:CjORZr+0https://github.com/defunkt/jquery-pjax
0655nobodyさん
2011/05/30(月) 16:39:23.34ID:CjORZr+0http://www.flickr.com/photos/oreillyconf/sets/72157626743161970/
0656nobodyさん
2011/05/30(月) 17:20:55.19ID:CjORZr+0http://www.slideshare.net/wooga/games-for-the-masses-scaling-rails-to-the-extreme
0657nobodyさん
2011/05/31(火) 17:28:27.08ID:Ka9v4rhmhttp://www.rubyinside.com/19-rails-tricks-most-rails-coders-dont-know-131.html
21 Ruby Tricks You Should Be Using In Your Own Code
http://www.rubyinside.com/21-ruby-tricks-902.html
0658nobodyさん
2011/06/01(水) 02:32:47.79ID:???画面で配信予約(キューイング)しておけばrailsじゃなくてもよさそうな感じがするが
あえてrubyのみでチャレンジしようかと考えてます。
0659nobodyさん
2011/06/01(水) 02:52:56.28ID:???Railsで「ある程度古くなったデータを削除する」てのをやったことある
cronで、wgetしてキッカケを作った記憶ある。同じようにすれば出来そうだが。。
0660nobodyさん
2011/06/01(水) 02:53:55.52ID:t3dlqwrpcronで(上記コントローラメソッドを対象に)wgetを回すとバッチ処理が可能。
http://d.hatena.ne.jp/utadaq/20070410#1176159516
0661nobodyさん
2011/06/01(水) 04:06:23.44ID:???単純にモデルかどこかでメソッド定義して、ruby script/runnerでそれを呼ぶのはだめなのか?
0662ぴらぴら
2011/06/01(水) 06:09:50.56ID:Qt9eV/1tTwitterでなんかする参考になるかもしれない。
動いているところ http://gohantabeyo.com/
0663nobodyさん
2011/06/01(水) 13:23:22.78ID:t3dlqwrp作りたい料理にいち早く辿り着くためのキャッシュの小話
http://www.slideshare.net/hmsk/ss-8107056
How to Scale Rails to 100 million requests per month | Abelson Info | Sports Data Solved
http://abelsoninfo.com/news/blog/how-scale-rails-100-million-requests-month
A simple Perlbal load balancer config for mongrel cluster - gugod's blog
http://gugod.org/2007/09/a-simple-perlbal-load-balancer-config-for-mongrel-cluster.html
0664nobodyさん
2011/06/01(水) 15:05:08.26ID:???しつこいんだよ。ストーカーかよ
2007年の記事とか役に立つわけねーだろ
0665nobodyさん
2011/06/01(水) 21:56:23.76ID:???<% statement %>
<%= var %>
のようにrubyのコードを埋め込むことができますが
これらはどのようなコンテキストで実行されてるのですか?
<%= self %>
これを表示させると
#<#<Class:0x45cbe77>:0x90ba004>
のように出力されますがこれが何を意味しているのかよく理解できない。
#が二つあるので特異クラスの特異クラス???
0666nobodyさん
2011/06/02(木) 00:42:48.58ID:???携帯みたいにすぐメール来ると思ってる。
配送待ちが詰まってスプールが溢れる。
エラー返してくれるのはまだいいほう。
0668nobodyさん
2011/06/02(木) 06:41:08.62ID:kVYpGx5MDrySQL --- Don't Repeat Yourself ---
http://drysql.rubyforge.org/
ttp://www.gesource.jp/weblog/?p=633
0669nobodyさん
2011/06/02(木) 07:02:26.31ID:kVYpGx5Mhttp://www.gesource.jp/weblog/?p=635
Ruby on Railsのパフォーマンス向上に関する10のtips
http://blog.tkmr.org/tatsuya/show/268-ruby-on-rails-10-tips
findメソッドはパワフルだけど基本SELECT * FROMなので場合によっては:selectで必要なカラムだけ読み込む、また:limitや:offsetを活用する
ごくごく基本的な Ruby on Rails のパフォーマンスチューニング
http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20071114
:conditions オプションでキーに使われるようなカラムにはインデックスを作成すべし
:selectで取得するカラムを絞ったらパフォーマンスが倍に
http://brass.to/blog/active_record_select_option.html
レコード件数は110万件くらい
カラム数は30程度
インデックスは効いている(explainで確認済み)
Rails で MySQL を使うときの注意点 | METAREAL
http://www.metareal.org/2007/07/24/notes-on-rubyonrails-with-mysql/
SQL を二段階に分けるといい
まず、最初の SQL でレコードの ID だけを SELECT する(int だけなので、このときの一時テーブルはメモリ上に作られる)
次に、その ID で必要な TEXT や BLOB を SELECT するんだ(これは ID による単純な検索なので一時テーブルは使われない)
MySQLパフォーマンスチューニングのためのインデックスの基礎知識
http://d.hatena.ne.jp/kiyo560808/20101117/1289952549
0670nobodyさん
2011/06/02(木) 08:36:58.61ID:???0671nobodyさん
2011/06/02(木) 13:27:50.54ID:???0672nobodyさん
2011/06/02(木) 15:45:05.87ID:???> 次に、その ID で必要な TEXT や BLOB を SELECT するんだ(これは ID による単純な検索なので一時テーブルは使われない)
このくらいはARで自動的にやってほしいなあ
0673nobodyさん
2011/06/03(金) 00:18:13.72ID:???windows7 64bit
ruby 1.9.2
gem 1.8.5
rails 3.0.7
コマンドプロンプトでrails -v
は動くけど
aptana3だと
$ rails -v
Could not find gem 'sqlite3 (>= 0)' in any of the gem sources listed in your Gemfile.
が出る
gem install sqlite3もエラー
0674nobodyさん
2011/06/03(金) 00:48:43.06ID:???0675nobodyさん
2011/06/03(金) 17:40:35.68ID:???64bitだと駄目っぽい
xpだとすんなりいく
0676nobodyさん
2011/06/04(土) 03:50:45.85ID:???0677nobodyさん
2011/06/04(土) 10:03:26.54ID:???どうなの?
0678nobodyさん
2011/06/05(日) 03:27:56.83ID:IJoH8Ll4>>643
Here's Why Ruby On Rails Is Hot
http://b.hatena.ne.jp/entry/www.businessinsider.com/heres-why-ruby-on-rails-is-hot-2011-5
0679nobodyさん
2011/06/06(月) 01:46:49.89ID:QMeKtLsuhttp://b.hatena.ne.jp/entry/weblog.jamisbuck.org/2006/10/18/skinny-controller-fat-model
0680nobodyさん
2011/06/06(月) 12:07:40.08ID:???現在の user.login_count が 3 だった場合、
user.login_count+=1
user.save
みたいにすると、発行されるSQLが
update users set login_count = 4 where id = 1;
みたいになってしまいます。
update users set login_count = login_count + 1 where id = 1;
とSQL側で演算しないとレースコンディションが発生する可能性が高くなると思います。
select for update で読み取りロックをかける方法も考えましたが、
新しい問題を起こす可能性の方が高いのでやりたくありません。
こういう場合、SQL側で加算させる方法はないでしょうか?
0681nobodyさん
2011/06/06(月) 12:39:52.33ID:???0682nobodyさん
2011/06/06(月) 12:59:36.72ID:K3+oLe8q0683nobodyさん
2011/06/06(月) 17:37:17.20ID:QMeKtLsuhttp://www.opensourcerails.com/
0684nobodyさん
2011/06/07(火) 00:13:39.74ID:???Rails におけるレースコンディションの例とその回避方法
http://d.hatena.ne.jp/LukeSilvia/20100130/p1
0685nobodyさん
2011/06/07(火) 10:39:12.16ID:???AM#increment ?
んなもんないしARの方のことを言ってるのだとしたら
increment は update_attributes のラッパーでもない
0686nobodyさん
2011/06/07(火) 11:02:53.70ID:nEfov8s20687nobodyさん
2011/06/07(火) 12:14:30.09ID:+kB2cAUQ$ rake db:migrate
で
sh: rake: command not found
とエラーになります。
しかし、windowsのコマンドプロンプトで実行すると正常に動作します。
aptana3上のセッティングだと思うのですが
どこを設定すればいいのでしょうか?
aptana 3, build: 3.0.1.201104291443
ruby 1.9.2p136 (2010-12-25 revision 30365) [i386-mswin32]
rails 3.0.7
gem 1.8.5
です。
宜しくお願い致します
0688nobodyさん
2011/06/07(火) 14:26:06.75ID:???0689680
2011/06/07(火) 20:28:43.98ID:???execute_sql でやろうと思います。
0690nobodyさん
2011/06/07(火) 21:09:34.57ID:Yc9LS9V/Rails3だとみんなIDE何使ってんの?
0691nobodyさん
2011/06/07(火) 22:55:24.10ID:D/O719uc0692nobodyさん
2011/06/08(水) 11:03:57.76ID:???ログイン回数のカウント程度で整合性気にしてたら何もできんぞ
心配でしかたないなら lock_version カラム入れるか AR.increment_counter
0693nobodyさん
2011/06/08(水) 11:05:56.59ID:???0694nobodyさん
2011/06/08(水) 12:15:53.83ID:te4kaWzhふぁい!
0695nobodyさん
2011/06/08(水) 12:37:21.52ID:TM/0uY0c0696nobodyさん
2011/06/08(水) 13:32:48.59ID:dMYNe+nJ0697nobodyさん
2011/06/08(水) 18:17:18.14ID:???0698nobodyさん
2011/06/08(水) 18:33:31.44ID:???0699nobodyさん
2011/06/08(水) 22:51:01.40ID:???rails.vimの出来が良すぎるので。
ただ、neocomplcache.vimと併用すると
rails.vim提供の補完が全滅するのがとにかく悲しい
両方共 出来が良すぎるので無効には出来ないですが。。。
0700nobodyさん
2011/06/08(水) 23:28:52.78ID:???gem install nokogiriでインストールしたのに、
controllerで鋸を使おうと、
require 'rubygems'
require 'open-uri'
require 'nokogiri'
を記述すると、
no such file to load -- nokogiriでエラーになります。
今だ鋸が使えず煮詰まっているので、
どなたか解決方法を教えていただけると有難いです。
0701nobodyさん
2011/06/09(木) 00:51:50.68ID:???0702nobodyさん
2011/06/09(木) 01:06:42.15ID:???ruby 1.9.2p180
rails 3.0.7
webrick
です。
yum install libxml2 libxml2-devel libxslt libxslt-develは実施済みですが、
windowsでもlinuxでも同じ状況が発生しているので、OSは関係ない気がしてます。
irbではrequire 'nokogiri'でTrueが返ってきています。
宜しくお願い致します 。
0703nobodyさん
2011/06/09(木) 01:09:52.53ID:60ZVyNduGemfileに書いてbundle installし直したか?
0704nobodyさん
2011/06/09(木) 01:12:28.41ID:60ZVyNduGemfileに指定したgemだけを使うように$LOAD_PATHを書き換える。
インストールしてあってもGemfileに出てこないgemはそのGemfileを使うプロジェクトには見えない。
0705nobodyさん
2011/06/09(木) 01:44:33.13ID:???IDE(NetBeans7)で
Gemfileでgem 'nokogiri'を記入しbundle installもやっていましたが、
Webrickを再起動してもその設定が反映されていないようです。
久しぶりにIDE自体を再起動してみたら、やっとnokogiriを認識してくれました。
IDEでのRails開発は思わぬ所でつまづきました。
でも、これでやっと先へ進めそうです。ありがとうございました!
0706nobodyさん
2011/06/09(木) 01:56:59.91ID:???合わせてありがとうございました。
■ このスレッドは過去ログ倉庫に格納されています