【RoR】Ruby on Rails Part18
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2014/01/11(土) 20:04:00.68ID:???http://kohada.2ch.net/test/read.cgi/php/1382097427/
http://unkar.org/r/php/1382097427/
■参考サイト
<英語>
本家:http://rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
http://ruby-toolbox.com/
http://rubygems.org/
http://agilewebdevelopment.com/plugins/top_rated
<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/
http://doc.ruby-lang.org/ja/1.9.3/doc/index.html
0002nobodyさん
2014/01/11(土) 20:07:19.72ID:???http://toro.2ch.net/test/read.cgi/hosting/1329378677/
■■ 国内クラウド/VPSスレ 8 ■■
http://toro.2ch.net/test/read.cgi/hosting/1378124154/
0003nobodyさん
2014/01/12(日) 01:27:24.84ID:q2C1gqcIバージョンを上げた方が良いと思うんですけど、どうやれば良いんでしょう?
初心者でわかりません。教えてください。
00043
2014/01/12(日) 01:50:32.50ID:q2C1gqcI/usr/lib/ruby/vendor_ruby/railties/lib/rails_generator/generators/applications/app/app_generator.rb:7: Use RbConfig instead of obsolete and deprecated Config.
このあとダラダラでて、怒られてるような気がするんですけど、どうすれば良いでしょうか?
初心者だから、教えて欲しいです。
0005nobodyさん
2014/01/12(日) 03:44:14.59ID:???gem install バージョンでググレば山のように出てくる
あとエラーメッセージは自力で嫁 その程度の英語が読めないならRubyに限らずプログラミングは困難
00063
2014/01/12(日) 04:36:25.96ID:q2C1gqcI>>4の一行目は、iconfは将来的に廃止されるから,String#encodeを代わりに使えって言われても謎。
一応、そのファイルの36行目周辺を見ても、iconfの文字はないし。
>>4の2行目は、ConfigとRbConfigって何ってなってしまう。
00083
2014/01/12(日) 14:59:20.08ID:q2C1gqcIruby -vで確認すると、
rubyのバージョンは、1.9.3p194(2012-4-20)ってでるんですけど、
バージョン低いんですかね?
確かに、2012の4月でちょっと昔そうではあるんですけど
00093
2014/01/12(日) 15:02:42.21ID:q2C1gqcI一応、これ見ながら、何も考えずにwgetのとこのコマンド打ちました。
00103
2014/01/12(日) 15:05:43.22ID:q2C1gqcIこのコマンドうったときって、どっから拾ってきてるんですかね?
言い方を変えると、こういうのって誰が作ってるんですか?ってことが知りたい。
0012nobodyさん
2014/01/12(日) 17:23:14.60ID:???http://www.ruby-lang.org
00133
2014/01/12(日) 18:32:54.67ID:q2C1gqcI1.9.3-p484です
ですが、またそこから謎です。
0014nobodyさん
2014/01/12(日) 19:01:59.35ID:???いちいち手取り足取り全部教えてくれというのはきついよ。
金払ってどこかの研修にでも行け。
http://railstutorial.jp/
くらいでも君にはきつそうだ。
0015nobodyさん
2014/01/12(日) 20:08:22.31ID:???相手の負担を考えず、自分への奉仕を要求する。
教えて君には回答を与えない。
回答してしまうと、質問者だけでなく他の人まで「この質問の仕方で良い」と思ってしまう。
メンバー全体に迷惑をかけることになる。
http://www.geocities.jp/stardust774/
0016nobodyさん
2014/01/12(日) 20:37:51.84ID:???私みたいに出来るレベルの人間はたまに暇潰しに覗いてツバを吐いて出ていくだけ
文面から分かるけど、教えて君とか何とか言っているのは常連の無能だよ
そんじゃノシ
0017nobodyさん
2014/01/12(日) 23:56:36.42ID:???http://dic.nicovideo.jp/a/うそはうそであると見抜ける人でないと(掲示板を使うのは)難しい
00183
2014/01/13(月) 01:19:26.70ID:mgMypIex色々やってみましたが、rubyのバージョンを最新版に上げたのに、少し下げたりと、
なんか色々な方法を試して失敗してるみたいな感じです(よくわからない)。
railsはbundleなんとかまで上手くいったのですが、
gitあたりになんか色々詰め込んで、requireで指定するか、消すかで、
よくわからないんで、しばらく諦めようと思います。
とりあえず、linux周りの勉強をもっとして、先輩あたりに聞いてみたいと思います。では。
0019nobodyさん
2014/01/13(月) 01:20:33.12ID:???どういうときに、何を書けばいいんだ
こういうコード書いてるから、こういうテストスクリプト書くっていう
例を教えてくだちい
0021nobodyさん
2014/01/13(月) 02:59:16.64ID:???rspecで何を書けばいいかはプロジェクトによるとしか言えない
自前のプロジェクトなら自分が気になるとこだけやっておけばいいんじゃなかろうか
0022nobodyさん
2014/01/13(月) 10:03:57.18ID:???残念でちゅ
>>21
そういうものですか。
単体テストというと、ifでの分岐とか
クラスから生成したら、そいつがちゃんとクラスかとか
そういうの見ればいいのでしょうか
どうにも基準がわからなかったのです
0024nobodyさん
2014/01/13(月) 13:41:15.25ID:???simplecovなどと合わせてカバレッジを見るようにしてみると
最低限のテストにはなるんじゃないかな。
0025nobodyさん
2014/01/13(月) 19:04:15.78ID:???例えばAPIを書いていて下方互換が必要かつ、バージョンアップごとに機能を追加する場合
当然データベース構造やモデルのメソッドやスコープをいじることになるが
その時にいちいちブラウザで全てのバージョンごとに動作確認するのは時間の無駄だし、絶対に漏れがでる
rpsecであらゆるパターンごとの結果を検証していれば適切な動作になるかが一目瞭然だし
失敗している場合もどこをどう修正すればいいのか明確になる
ウェブアプリで下方互換の必要がなくても、モジュール化された部分が変更されると
どこに影響が生じるかは判別しづらいし、その度にブラウザポチポチするのは確実でない
最も大きいのはRailsのバージョンアップで、あらゆる箇所に影響を与えるから
テストを書いていないと事実上バージョンアップに耐えられなくなる
0026nobodyさん
2014/01/13(月) 19:32:35.92ID:???http://b.hatena.ne.jp/entry/d.hatena.ne.jp/passingloop/20111125/how_to_write_rails_activerecord_model_tests
0027nobodyさん
2014/01/15(水) 04:52:17.94ID:???http://kohada.2ch.net/test/read.cgi/php/1378659370/
0028nobodyさん
2014/01/15(水) 21:56:30.82ID:???all[hoge]
end
def all(reload = false)
〜
end
この記述の仕方ってどういうことを挿してるのでしょうか
def [] でググってもあたらなくて。
0029nobodyさん
2014/01/15(水) 22:01:21.72ID:XpYxBZdp0030nobodyさん
2014/01/15(水) 22:10:14.30ID:???objで呼び出すとはどういうことですか
あと ||= の演算子もよくわからず
0031nobodyさん
2014/01/15(水) 22:23:39.83ID:???obj.hoge
みたいに呼び出すよね?それに加えて、
obj[huga]
という書き方でobjというオブジェクトの[]というメソッドを呼び出す
ことができるんだ。この[]というメソッドを定義しているのが
def [](hoge)
というわけ。あと、
a ||= b
は
a = a || b
の省略形
0033nobodyさん
2014/01/15(水) 22:50:21.57ID:???0034nobodyさん
2014/01/16(木) 00:42:42.08ID:???0035あ
2014/01/17(金) 05:18:28.10ID:???We highly recommend you upgrade to Ruby 2.1 or 2.0.0 as soon as possible.
https://www.ruby-lang.org/en/news/2014/01/10/ruby-1-9-3-will-end-on-2015/
0036nobodyさん
2014/01/17(金) 10:55:06.60ID:???http://news.mynavi.jp/news/2014/01/15/060/
0037nobodyさん
2014/01/18(土) 03:30:34.27ID:nh9P47yc0039nobodyさん
2014/01/19(日) 15:33:19.88ID:???http://www.mcafee.com/japan/security/mcafee_labs/blog/content.asp?id=1379
New York Timesの記事によれば、同紙は米Symantecのウイルス対策製品を使っていたが、
Mandiantが調べた結果、攻撃者が使った45種類のカスタム版マルウェアのうち、Symantecの製品で検出できたのは1種類のみだったという。
http://bylines.news.yahoo.co.jp/yamamotoichiro/20130204-00023332/
ソニーPSNの個人情報漏洩に英国で約3500万円の罰金支払い命令、「防げた事件」と判定 - Engadget Japanese
http://japanese.engadget.com/2013/01/24/psn-3500/
0040nobodyさん
2014/01/21(火) 09:07:00.73ID:???自分でサーバ立てるのってなんか楽しそうだしスゴそうだよね?
サーバ立てるのなんてちょっとパソコンに詳しければ簡単にできるんでしょ?
ハードウェアの多重化なんて必要?
企業で使うとかじゃなく個人的に細々と立てたサーバが攻撃されることなんて滅多にないよね?
攻撃が来るって言ったって大した数じゃないんでしょ?
攻撃されたって大したことは起きないんでしょ?
http://b.hatena.ne.jp/entry/tmaeda.s45.xrea.com/20041101.html
0041nobodyさん
2014/01/21(火) 09:07:48.71ID:???また、電源を切ってしまうことも良い対応ではない。
オンメモリ上で稼働しているフィッシングサイトの場合は、電源を切ることによって、すべてのデータが消えてしまい、原因究明や対応に遅れなどが出ることも考えられるからだ。
事実、フィッシングサイトを構成するツールの中には、後に証拠が残らないよう、すべてがオンメモリ上で動作するものがある。
このような場合、再起動や電源オフによって、メモリ上にあるすべてのプログラムやファイルが消え、事実や原因の確認が困難になる。
http://www.itmedia.co.jp/enterprise/articles/0603/17/news004.html
0042nobodyさん
2014/01/22(水) 18:54:34.66ID:???http://kohada.2ch.net/test/read.cgi/php/1357402658/
0043nobodyさん
2014/01/25(土) 10:10:12.36ID:KuoCcVFEhttp://www.amazon.co.jp/gp/product/4152094338
0044nobodyさん
2014/01/26(日) 10:58:22.87ID:WqthtWoB0045nobodyさん
2014/01/26(日) 21:26:03.56ID:WqthtWoBアップロード完了後に別のテンプレートを紐づけたいと思っています。
この場合、doneを使えば良いのでしょうか?
かなりマイナーな質問ですが宜しくお願いします。
0046nobodyさん
2014/01/26(日) 21:38:54.14ID:???今までずっとRailsの開発をしていて、今回初めてsinatraの開発をすることになりました。
Ajaxのレスポンスで、Railsではjs.erbのように、変数を埋め込むjs を返せましたが、sinatraでこれを実現する術が見つかりません。
そのためレスポンスはいつも静的なjsやhtmlを返す必要があるため、コントローラ側でインスタンス変数を用意しておいてviewでそれを使う、といったことが出来ません。
これを実現する方法は無いでしょうか。
0047nobodyさん
2014/01/26(日) 22:09:25.42ID:???http://ginzanomama.hatenablog.com/entry/2013/04/07/152242
0048nobodyさん
2014/01/26(日) 22:31:21.87ID:WqthtWoB助けて欲しいですが、もう少し悪戦苦闘してみます。
0049nobodyさん
2014/01/26(日) 23:15:38.96ID:WqthtWoBcreateアクションで何をどう返せば良いのかが分かりません。
使用しているのはdataTypeはscriptです。
0050nobodyさん
2014/01/26(日) 23:16:13.53ID:???0051nobodyさん
2014/01/26(日) 23:18:38.09ID:???JavaScriptスレ行け
0053nobodyさん
2014/01/26(日) 23:23:00.46ID:???どう見てもrailsの話だろ railscastにももろ載っている分野w
質問者の聞いていることはダイレクトには載っていないから試しにきたのか はたまたただの質問か
>>51のようにrailsとは関わりもないと思う低能ワーカーが多いから面白そうだ
まぁ私は答えられるが君たちの実力でも見物させてもらうことにするお
005553
2014/01/26(日) 23:26:52.59ID:???分からないnaraごたごた語るなよw
Railscastにも載っている分野と言っているだろうが
しかもjavascriptに限定した問題じゃねえからw
馬鹿丸出しだなw
こんなことも分からずどんな仕事してんの?w
しかもここに何しに来てんの?w
0056nobodyさん
2014/01/26(日) 23:29:22.07ID:???せっかく適切な場所に誘導してやってるのに、問題を解決したいんじゃないのかい?
(なお君が質問者本人であることはバレバレなので)
005753
2014/01/26(日) 23:30:32.44ID:???俺は分かったけど ここにいるゴミたちはもう少しヒントがないと分からないと思うぞ
その存在すら知らないで糞サイト作ってるやつばかりだから
javascript絡みと認定する"上級者"の発言見て笑い転げてるんだろ?w
0058nobodyさん
2014/01/26(日) 23:57:06.80ID:???0059nobodyさん
2014/01/27(月) 00:04:31.31ID:???上級者は荒らしに来て、下級者は自分が答えられる低レベル質問だけに答えて悦に浸る
気持ち悪い輩が多いからしばらく見ていなかったがレベルは低いままだw
0060nobodyさん
2014/01/27(月) 00:12:54.68ID:???doneのところでreturn data.submit()やってるだろ?多分
それがあるなら消してやってみな
うちの部下も間違えていたからそれじゃないかな?
もし違ったらまたここで言いな
でもここ俺みたいに応えられる人間それほどいないから、ググりまくったり試行錯誤しまくったりの方が実力つくよ
すでにここにいるゴミよりはレベル高いから頑張り奈
006153
2014/01/27(月) 00:15:27.44ID:???あっ、俺ね
多分これ答えられるの俺だけ
君が試験しているのなら、君と俺だけ
javascriptの問題と思ってるアホがいて辟易としただろ?w
railsCastも読み漁っていないワープアばかりなんだよここは
俺と君除いてね
ほんじゃノシ
0062nobodyさん
2014/01/27(月) 00:39:39.10ID:e6GdOtI/おおおおおいけましたああああああ!!!!!!!!
試験?いえ、そんなレベルは高くないです^^;
今後ともご指導宜しくお願い致します。
0063nobodyさん
2014/01/27(月) 01:04:42.54ID:???0064nobodyさん
2014/01/27(月) 01:07:45.49ID:???てめぇらクズのせいで
一括りにクズ扱いされるのはゴメンだ
0066nobodyさん
2014/01/27(月) 01:17:25.06ID:???あっ、俺以外全員かw
プライドだけは高いから自演による罠だとでも思っているようだw
まぁ、君たちは糞サイト作って一生終われば良いよw
0067nobodyさん
2014/01/27(月) 01:19:33.45ID:???レベルが低すぎるし、プライドはアンバランスに高すぎる
こんな問題も答えられずにグダグダこのスレに住み着いている
屑どもだ
私は失敬するよ
ゴミ臭さが移る
0068nobodyさん
2014/01/27(月) 01:22:00.75ID:???お前つまんね
0070nobodyさん
2014/01/27(月) 02:10:39.34ID:???0071nobodyさん
2014/01/27(月) 11:07:08.34ID:???最初は自分で努力しようと考えている人も、親切にされるとそれを当たり前だと思い、次からはもっと人に頼るようになる。
甘やかすことは、その人から向上心やプライドを奪うことでもある。
http://ja.uncyclopedia.info/wiki/教えて君
0072nobodyさん
2014/01/30(木) 00:32:31.65ID:YnHSSLC6両方とも外部テーブルの主キーを外部キーとして持つんですよね?
languages
| id | name |person_id |
|─┼──┼───┤
| 01| PHP | 02 |
| 02| Ruby | 03 |
| 03| Perl | 01 |
persons
| id | name |
|─┼─────────┤
| 01| Larry Wal |
| 02| Rasmus Lerdorf |
| 03| Yukihiro Matsumoto |
frameworks
| id | name | language_id |
|─┼──────┼─────┤
| 01| Ruby On Rails | 02 |
| 02| CakePHP | 01 |
| 03| Catalyst | 03 |
| 04| Sinatra | 02 |
| 05|Symfony | 03 |
この場合、languageはhas_one person、lanaugesはhas_many frameworksとするのが妥当ですが、
これはModel側の記述であり、DB上は特にhas_oneとhas_manyに違いはないですよね?
0074nobodyさん
2014/01/30(木) 12:05:51.35ID:SFIRhpo1http://blogjp.gyazo.com/2014/01/gyazo-rails-mongodb.html
0075nobodyさん
2014/01/30(木) 19:18:14.28ID:SFIRhpo1http://ascii.jp/elem/000/000/856/856173/index-3.html
0076nobodyさん
2014/01/30(木) 19:58:36.39ID:???0077nobodyさん
2014/01/30(木) 20:13:27.09ID:???0078nobodyさん
2014/01/30(木) 21:59:47.52ID:???http://q.hatena.ne.jp/1322544557
0081nobodyさん
2014/01/31(金) 00:58:17.26ID:???を実行するとdevelopmentの方のDBが使われちゃうんだけど、これはどこを直せばいいんだろうか?
rake test RAILS_ENV=test
これならうまく動くんだが
0082nobodyさん
2014/01/31(金) 01:02:27.14ID:???https://github.com/rails/rails/issues/7175
これと関係ある?
0083nobodyさん
2014/01/31(金) 01:22:58.47ID:???関係有るかな?ちなみにRails4.0.0
ただtest_helper.rbをENV["RAILS_ENV"] = "test"に
直しても同じなんだよなー
0085nobodyさん
2014/02/01(土) 23:47:38.22ID:???[
{ id: 1, category: "game", title: "foo" },
{ id: 2, category: "game" ,title: "bar" },
{ id: 3 ,category: "anime", title: "baz" },
{ id: 4, category: "manga", title: "hoge" },
{ id: 5, category: "manga", title: "fuga" }
]
というハッシュの配列なのですが、扱いにくいので
{
"game": [ { id: 1, title: "foo" }, { id: 2, title: "bar" } ],
"anime": [ { id: 3, title: "baz" } ],
"manga": [ { id: 4, title: "hoge" }, { id: 5, title: "fuga" } ]
}
という形式にしたいのです。
ActiveRecord側でやるとしたら、
{ "game": Table.where(:category=>"game").pluck(:title),
"anime": Table.where(:category=>"anime").pluck(:title),
"manga": Table.where(:category=>"manga").pluck(:title) }
ですが、リモートDBに3回もアクセスしてしまうのがネックです。
Ruby側でflatternの反対みたいなことしたいのですが、無理なのでしょうか?
008685
2014/02/01(土) 23:53:35.89ID:3TbUHFmS0087nobodyさん
2014/02/02(日) 00:03:08.70ID:???0088nobodyさん
2014/02/02(日) 04:27:31.92ID:PCf1V6FE0089nobodyさん
2014/02/04(火) 20:24:52.19ID:6aYeGabMhttps://www.quantcast.com/top-sites
0090nobodyさん
2014/02/04(火) 23:50:47.19ID:gU4r7kTuそのタグは、既存のタグを@tags = Tag.where(:article_id=>@article.id)とかで持ってくるのですが、
その既存タグたちを編集するときの仕様が困っています。
@tags.each do |tag|
form_for tag
とかやってしまうとタグの数だけformが作られてしまいます。
form_tag
@tag_each do |tag|
とすればいいのですが、formよりもjQueryでエンドポイントにそのままputするほうがスマートでしょうか?
Railsでどういう作り方が推奨されてるのでしょうか。
0092nobodyさん
2014/02/05(水) 23:58:56.05ID:CUveIPVWhas_many :throughは中間テーブルがあるとき限定っぽいです
0093nobodyさん
2014/02/06(木) 00:08:00.85ID:na+0nu86>>90 の実装だと同じ字面のタグが複数できちゃうから、taggings みたいな
中間テーブル作って has_many trhough が常套手段だけど。
それはともかく、本体は fields_for なのでそっちも調べてよ。
0094nobodyさん
2014/02/06(木) 03:18:59.78ID:???0095nobodyさん
2014/02/06(木) 04:51:06.58ID:???どんどんRails自体の機能やライブラリが新しくなって2,3年前の記事が参考にならないくらいだから
初めは取っ付きづらくて当たり前だと思う
むしろ下手に習熟してアプリケーションが肥大化するとバージョンアップにとてつもなく苦労する
0096nobodyさん
2014/02/06(木) 07:08:23.67ID:???0098nobodyさん
2014/02/06(木) 17:48:33.77ID:???「最大公約数的な考え方をするとPHPしかない(キリッ」って言われて
どうしてもPHPなんだよね。
実務レベルでRails使えるエンジニアなんて求人出しても応募してこないでしょ。
0099nobodyさん
2014/02/07(金) 01:08:55.49ID:???受託系だとどうしてもPHPしか選択肢がない
0101nobodyさん
2014/02/07(金) 12:42:29.67ID:???0102nobodyさん
2014/02/07(金) 13:46:29.73ID:???railsプロジェクトだと自動scpアップロード機能が使えなくてがっかりした。
0103nobodyさん
2014/02/07(金) 15:37:10.32ID:???0104nobodyさん
2014/02/07(金) 18:06:36.60ID:???sshでWinからやんのかね
なんかWeb開発ってGUIじゃないと捗らなそう
0105nobodyさん
2014/02/07(金) 19:18:08.86ID:???0106nobodyさん
2014/02/07(金) 19:46:01.66ID:???そのせいで会社がRailsに移行してくれん
JavaとPHPから抜け出せん
0107nobodyさん
2014/02/07(金) 21:41:23.68ID:VfrloKNC0108nobodyさん
2014/02/07(金) 21:54:24.56ID:???0109nobodyさん
2014/02/07(金) 22:17:23.69ID:???0110nobodyさん
2014/02/07(金) 22:43:48.93ID:???0111nobodyさん
2014/02/07(金) 23:16:17.12ID:???ちょっと舐めてたのもあるけど一通りやらないと自分で自由に出来ない予感がする
0112nobodyさん
2014/02/07(金) 23:22:44.92ID:???macbook airでvimだな
最近はこれぐらいライトな開発環境が多いと思う。
javaとかcとか俺には絶対無理だし
0113nobodyさん
2014/02/08(土) 00:25:55.91ID:???もちろんその度にググレば場当たり的に対応できるけど、
ライブラリも交えて自由にショッピングサイト作れるようになるまでフルタイムで1年くらいかかるぞ
そもそもRails自体一人で扱うには範囲が広すぎて、新機能・ライブラリとのいたちごっこみたいにになる
0114nobodyさん
2014/02/08(土) 00:32:08.64ID:???今は知り合いも会社もvagrant
会社ではvagrantで開発環境作るのがルールになってる
依存で悩む経験するとmacじゃ開発できなくなってくる
0115nobodyさん
2014/02/08(土) 00:39:06.62ID:???0116nobodyさん
2014/02/08(土) 00:52:14.76ID:???ライブラリをカスタマイズしたりと自分で何かを生み出す能力は身につかないけど
既存ライブラリとRailsの特性を活かしてレールに乗れた時の生産性は非常に高い
前者を求める企業には適合しないけど、少ないリソースでいくらかの成果を求める分には適合する
0117nobodyさん
2014/02/08(土) 00:59:50.35ID:???0118nobodyさん
2014/02/08(土) 01:15:20.16ID:???Matzの対談で出るぐらいのことだからな
驚きですよ
0119nobodyさん
2014/02/08(土) 13:20:37.97ID:NPzdtZy4ttp://crowdworks.jp/public/job_skills/33
0120nobodyさん
2014/02/08(土) 14:43:57.63ID:???0121nobodyさん
2014/02/08(土) 15:13:19.89ID:???アプリケーションエンジニアは平凡な人たちだよ。言葉悪いけど。
できたてのWEBサービス系ベンチャーのRails率は半端ないよ。
0122nobodyさん
2014/02/08(土) 15:45:41.97ID:NPzdtZy4http://engineer.typemag.jp/article/forkwellxcookpad
0123nobodyさん
2014/02/08(土) 15:49:44.16ID:???クックパッドだといまいちインパクトに欠ける気がする
0124nobodyさん
2014/02/08(土) 16:00:28.97ID:???0125nobodyさん
2014/02/08(土) 16:02:44.89ID:???アメリカで新興だけど1000万人規模のサービスとか結構Railsで作られてるよ
>>121の通り、世界的にベンチャーのRails採用率は異常に高い
0127nobodyさん
2014/02/08(土) 16:07:59.45ID:???ストアドプロシージャをメインで使うのかね
0128nobodyさん
2014/02/08(土) 16:18:27.50ID:???0129nobodyさん
2014/02/08(土) 23:34:09.50ID:???ありがとうございました
fields_forでやっと出来ました
buildとか必要だったことがなかなか分かりませんでした
次はhas_many throughでテーブルから組みなおします
0130nobodyさん
2014/02/09(日) 00:04:41.99ID:???0131nobodyさん
2014/02/09(日) 01:34:01.29ID:???0132nobodyさん
2014/02/09(日) 02:22:01.84ID:???0133nobodyさん
2014/02/09(日) 03:10:12.90ID:???0134nobodyさん
2014/02/10(月) 08:17:25.78ID:J/5zHJ5dhttp://homakov.blogspot.com/2014/02/paperclip-vulnerability-leading-to-xss.html
0135nobodyさん
2014/02/10(月) 08:18:28.09ID:J/5zHJ5dhttp://www.theregister.co.uk/2014/02/09/content_type_spoofing_bug_in_ror_paperclip/
0138nobodyさん
2014/02/10(月) 19:42:03.77ID:???どこで使ってるんだろう
0139nobodyさん
2014/02/10(月) 20:26:03.63ID:???before_filter exceptみたいな感じで指定することはできないのでしょうか
どうしてもrenderの直前にならざるをえないのでしょうか
0140nobodyさん
2014/02/10(月) 22:14:36.36ID:???http://api.rubyonrails.org/classes/AbstractController/Layouts/ClassMethods.html#method-i-layout
0141nobodyさん
2014/02/10(月) 23:48:40.06ID:???すいません
クラスメソッドだと条件文が使えないのでフィルター(インスタンスメソッド)で使いたいのですが
方法はないのでしょうか
0143nobodyさん
2014/02/11(火) 02:01:21.34ID:oikpYNJm> Symbol
> call the method specified by the symbol, which will return the template name
これ、コントローラのインスタンスメソッドなんだよね。
0144nobodyさん
2014/02/11(火) 02:25:45.15ID:iwHGH8gShttp://www.reddit.com/r/scala/comments/1xg3oa/skinny_framework_scala_on_rails/
http://skinny-framework.org/
0145nobodyさん
2014/02/12(水) 02:41:27.20ID:???学習コスト高いわ
0146nobodyさん
2014/02/12(水) 04:13:31.94ID:???require 'sinatra'
get '/' do
'Hello world!'
end
gemをインストールして動かしてみる。
gem install sinatra
ruby myapp.rb
localhost:4567 を見る。
http://www.sinatrarb.com/intro-jp.html
0148nobodyさん
2014/02/13(木) 06:40:07.00ID:???手元で書いて動くコードは1分でできるのに、
例外処理をして9割の完成度に上げるのには、とてつもなく時間がかかる場合がある
http://el.jibun.atmarkit.co.jp/rails/2011/09/web9-1e8b.html
スタートアップ企業で8年間Webの開発をしてみての反省点いろいろ - Masatomo Nakano Blog
6. サーバ周りの人材をしっかり確保しよう
http://b.hatena.ne.jp/entry/blog.madoro.org/mn/84
Ruby on Rails が簡単というのはウソ - #生存戦略 、それは - subtech
http://subtech.g.hatena.ne.jp/secondlife/20120309/1331279496
今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」 | つい全力ツッコミしてしまうエンジニアCEOのブログ | sumyapp
http://b.hatena.ne.jp/entry/blog.sumyapp.com/2013/07/no-recommend-rails/
0149nobodyさん
2014/02/13(木) 06:41:23.89ID:???サーバ立てるのなんてちょっとパソコンに詳しければ簡単にできるんでしょ?
ハードウェアの多重化なんて必要?
企業で使うとかじゃなく個人的に細々と立てたサーバが攻撃されることなんて滅多にないよね?
攻撃が来るって言ったって大した数じゃないんでしょ?
攻撃されたって大したことは起きないんでしょ?
http://b.hatena.ne.jp/entry/tmaeda.s45.xrea.com/20041101.html
運用中のApache Webサーバの大半にセキュリティ脆弱性 | マイナビニュース
http://news.mynavi.jp/news/2014/02/11/038/
0150nobodyさん
2014/02/14(金) 12:01:08.20ID:???http://www.itmedia.co.jp/enterprise/articles/1402/13/news043.html
ntpd の monlist 機能を使った DDoS 攻撃に関する注意喚起
http://www.jpcert.or.jp/at/2014/at140001.html
0151nobodyさん
2014/02/15(土) 01:45:41.24ID:???huluに続くと言われてる
sidereelもRailsだよ
日本はどうしてRails需要がこんなにもないのか?
0152nobodyさん
2014/02/15(土) 02:00:18.58ID:???Rubyが日本発だから勘違いしてる人もいるかもしれないが、Railsは英語が使えない人は
お断りレベルで英語情報中心だからだと思われる
0153nobodyさん
2014/02/15(土) 09:53:45.58ID:???日本で小規模で始めるには情報が足りなさ過ぎることだろうな
0154nobodyさん
2014/02/15(土) 10:54:35.90ID:???パフォーマンスとか何も考えずに作るし
0155nobodyさん
2014/02/15(土) 11:02:51.85ID:???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
0156nobodyさん
2014/02/15(土) 16:41:03.81ID:???0157nobodyさん
2014/02/15(土) 16:44:08.36ID:???0158nobodyさん
2014/02/15(土) 16:59:29.59ID:???海外留学して英語がネイティブな人と仕事したことあるけどどう頑張っても勝てそうに無いと思った
0159nobodyさん
2014/02/15(土) 17:42:49.20ID:???ウェブ系の仕事に就いたらまさに英語力が命だったでござるの巻
0160nobodyさん
2014/02/19(水) 10:20:17.36ID:ELco+zCchttp://weblog.rubyonrails.org/2014/2/18/Rails_3_2_17_4_0_3_and_4_1_0_beta2_have_been_released/
0161nobodyさん
2014/02/20(木) 01:42:55.72ID:???管理画面でモデルを管理するとき、http://hoge.com/admin/モデル名にしようと思っています。
このモデル自体はアプリケーション全体から参照されているんですけど、
ルートにこういう記述をしたら
namespace :admin do
resources :model
end
コントローラーだけでなくmodelも参照するときは常にAdmin::Modelって感じに参照しないとダメだって怒られました。
でもそれは煩雑なのですが・・・どうすればいいんですかね?
0162nobodyさん
2014/02/20(木) 07:04:05.02ID:???resources :model
end
0163nobodyさん
2014/02/20(木) 10:26:12.50ID:ATjg5jOfhttp://piko.hateblo.jp/entry/2013/10/09/111746
0164nobodyさん
2014/02/20(木) 13:10:05.02ID:???>結局のところクルマを運転する上で、中身なんぞ知らなくてもいいだろ?使う奴は運転する技術だけ習得してこいって考え方がrailsだと思います。
土方向きだけのことはあるな
0166nobodyさん
2014/02/23(日) 14:40:29.71ID:iS1220phmy_class = MyClass.new
my_class.class_eval do
def m1; 'hello!'; end
def self.m2; 'hello!'; end
end
上記の場合、カレントクラスのMyClassにm1というインスタンスメソッドが追加されて、
カレントクラスのMyClassの特異クラスにm2という特異メソッドが追加されるとう理解でいいですか?
0167166
2014/02/23(日) 15:12:35.43ID:iS1220ph0168nobodyさん
2014/02/25(火) 23:28:09.96ID:???データベースは作らず、読み書きできるYAMLを作るのが普通ですか?
0169nobodyさん
2014/02/26(水) 00:46:37.59ID:???configみたいなテーブルでも作って。
0170nobodyさん
2014/02/26(水) 02:08:48.86ID:???0171nobodyさん
2014/02/26(水) 21:18:20.42ID:kpHlwgHZhttp://b.hatena.ne.jp/entry/www.slideshare.net/eccyan/ruby-on-rails-on-mysql
0172nobodyさん
2014/02/27(木) 00:32:44.15ID:???サーバ立てるのなんてちょっとパソコンに詳しければ簡単にできるんでしょ?
ハードウェアの多重化なんて必要?
企業で使うとかじゃなく個人的に細々と立てたサーバが攻撃されることなんて滅多にないよね?
攻撃が来るって言ったって大した数じゃないんでしょ?
攻撃されたって大したことは起きないんでしょ?
http://b.hatena.ne.jp/entry/tmaeda.s45.xrea.com/20041101.html
運用中のApache Webサーバの大半にセキュリティ脆弱性 | マイナビニュース
http://news.mynavi.jp/news/2014/02/11/038/
VPSに来た攻撃観察記
http://www.slideshare.net/ozuma5119/vps-26061504
VPSに来る悪い人を観察して通報してインターネットを少し良くする
http://www.slideshare.net/ozuma5119/vps-tuho
0173168
2014/02/27(木) 00:58:46.01ID:???でもConfigモデルを作るとしてキーバリュー式だとform_forとかと相性悪いんですよね・・・
かといって1行しかあり得ないレコード作るのってどうなんでしょうか
Railsでなければ 本番 開発用 テスト用って感じで3レコードは作るのですが
0174nobodyさん
2014/02/27(木) 05:29:33.48ID:???0175nobodyさん
2014/02/28(金) 21:18:49.55ID:Sd8nPPeFこの場合、Postするコントローラーはどこにすべきなんでしょうか?
resources: foo
resources: bar
とあって、foos#updateとbars#updaterがあるのですが
この場合、foosbars_controllerに#updateを作るべきなのでしょうか?
0176nobodyさん
2014/02/28(金) 21:37:18.82ID:???> この場合、foosbars_controllerに#updateを作るべきなのでしょうか?
色々考え方はあるけど、これが一番素直じゃないかな
0177nobodyさん
2014/02/28(金) 22:09:35.94ID:???http://tanihiro.hatenablog.com/entry/2014/01/09/193720
0178nobodyさん
2014/02/28(金) 22:17:40.49ID:???レイヤーがもうちょい上になる業務よりのレイヤーで切り分ける感じにするかな
businessA_controller#updateみたいな感じで。
色んなリソース持ってるユーザーのマイページをmypage_controllerであれこれ処理したりしてる
0179nobodyさん
2014/03/01(土) 16:53:35.83ID:kyl0LBj5http://toro.2ch.net/test/read.cgi/tech/1393660194/2
0180nobodyさん
2014/03/01(土) 22:23:30.44ID:???>>178
ありがとうございました。
参考にします
>>177
ありがとうございました。
Rails4限定なんですね
0181nobodyさん
2014/03/02(日) 16:04:33.91ID:???調べてみたところshop.itemsは実際は3レコードあるのに、
shop.items.count => 1
shop.items.size => 3
このようにcountだと1が返ってました。
どういうことなんでしょう・・・
0182181
2014/03/02(日) 16:09:38.67ID:???puts shop.items.map(&:name)
=>
item1
item2
item3
puts shop.items.pluck(:name)
=>
item3
0183nobodyさん
2014/03/02(日) 19:09:13.57ID:???AbstractController::ActionNotFoundを表示しない方法ってありませんか?
存在しないアクション叩かれてエラーログが大量になるので困ってます
0184あ
2014/03/02(日) 19:42:02.77ID:???0185nobodyさん
2014/03/02(日) 19:43:53.19ID:???0186nobodyさん
2014/03/02(日) 21:06:18.23ID:f/Pqujp3もうひとつはbackup_image_idというカラム名です。
@model.backup_imageとプロパティにアクセスしたときに、自動的にImageテーブルにクエリー走らせることはできないのでしょうか?
0187nobodyさん
2014/03/02(日) 21:12:10.87ID:???0188nobodyさん
2014/03/03(月) 00:15:09.71ID:???http://rubyist.g.hatena.ne.jp/rochefort/20090802/p1
0189nobodyさん
2014/03/03(月) 00:42:54.12ID:eHHADPWD0190nobodyさん
2014/03/03(月) 01:01:41.74ID:???複数のRailsアプリ(複数ドメイン)を走らせてる猛者はいる?
Railsアプリ1つにつきVPSを1つ契約するのが勿体なく感じてきた
0191nobodyさん
2014/03/03(月) 01:03:32.20ID:???0192nobodyさん
2014/03/03(月) 11:32:43.29ID:???0193nobodyさん
2014/03/03(月) 12:05:52.25ID:tPpkCX6/http://www.mcafee.com/japan/security/mcafee_labs/blog/content.asp?id=1379
New York Timesの記事によれば、同紙は米Symantecのウイルス対策製品を使っていたが、
Mandiantが調べた結果、攻撃者が使った45種類のカスタム版マルウェアのうち、Symantecの製品で検出できたのは1種類のみだったという。
http://bylines.news.yahoo.co.jp/yamamotoichiro/20130204-00023332/
ソニーPSNの個人情報漏洩に英国で約3500万円の罰金支払い命令、「防げた事件」と判定 - Engadget Japanese
http://japanese.engadget.com/2013/01/24/psn-3500/
Adobeにサイバー攻撃、顧客情報290万人分抜き取り、製品のソースコードも -INTERNET Watch
http://internet.watch.impress.co.jp/docs/news/20131004_618168.html
0194nobodyさん
2014/03/03(月) 12:07:24.76ID:???自分でサーバ立てるのってなんか楽しそうだしスゴそうだよね?
サーバ立てるのなんてちょっとパソコンに詳しければ簡単にできるんでしょ?
ハードウェアの多重化なんて必要?
企業で使うとかじゃなく個人的に細々と立てたサーバが攻撃されることなんて滅多にないよね?
攻撃が来るって言ったって大した数じゃないんでしょ?
攻撃されたって大したことは起きないんでしょ?
http://b.hatena.ne.jp/entry/tmaeda.s45.xrea.com/20041101.html
0195nobodyさん
2014/03/03(月) 12:43:05.49ID:???0196nobodyさん
2014/03/04(火) 00:14:26.81ID:???リンク踏んだらアフィリ貼りまくってるぺーじだったし
0197nobodyさん
2014/03/04(火) 02:27:29.26ID:???定期的にでっかいサイズのCSVファイルを作成してFTPサーバーにアップする処理をしています。
しかしこの処理が何回か実行されるといつもメモリオーバーのエラーになってしまいます。
どうやら一回のバッチのたびにメモリ使用量が20%ぐらい上がり、処理が終わっても下がらず
それが積み重なっていつか溢れてしまう、という現象のようです。
しかしどこが悪いのか分かりません。アドバイスいただけないでしょうか。
具体的には以下のような流れです。
csv = CSV.generate do |csv|
# 巨大なCSVを書き込む処理
end
ftp = Net::FTP.open('test-server.com', 'id', 'pass')
f = Tempfile.new('myfile.csv')
f.write(csv)
ftp.put(f.path, 'myfile.csv')
f.close
ftp.close
このバッチをclockworkで定期的に走らせています。
何かのリソースが解放されないままになっているのでしょうか?
0198nobodyさん
2014/03/04(火) 02:31:49.04ID:???バッチが2回ほど回ったときにtopコマンドを叩くと
メモリ使用量が40%ぐらいになってます。
ここでclockworkを再起動すると、また0%近くまで戻ります。
0199nobodyさん
2014/03/04(火) 08:20:37.89ID:???0200nobodyさん
2014/03/04(火) 21:56:50.40ID:???ありがとうございます。
タスクの終わりにGC.startを入れてみましたが、メモリ使用量は下がらなかったです。
とりあえず1時間ごとぐらいに再起動することで乗り切りることにします。
低レイヤのこと分かってないとこういうのが辛いなあ
0201nobodyさん
2014/03/04(火) 22:25:57.36ID:???0202197
2014/03/04(火) 23:07:49.36ID:???意味するところがちょっと分からないです><
途中でTempfileを使っているのがオンメモリということでしょうか?
Fileクラスを使うということですか?この場合もFileオブジェクトを作るから同じですよね。
見当違いのことを言っていたらすいません。
0203nobodyさん
2014/03/04(火) 23:16:13.55ID:???0204197
2014/03/04(火) 23:43:42.65ID:???csvを作る処理は違うプロセスでやって
clockworkでは作成済みのCSVファイルをftpにアップするだけ、という流れでしょうか
0205nobodyさん
2014/03/04(火) 23:56:04.97ID:???それじゃメモリに巨大な文字列がのっかってるってことじゃん
じゃなくて、1行ずつファイルに書き込めって話
CSV.open は IO を引数に取れるから、詳しくはマニュアルを読め
0206nobodyさん
2014/03/05(水) 00:05:46.31ID:???間違えた。CSV.new な
0208197
2014/03/05(水) 00:26:50.66ID:???0209nobodyさん
2014/03/05(水) 01:28:25.87ID:???メモリ解放する術は無いの?nil入れても無駄だし。GC.startってそもそもちゃんと働くのかね
0210nobodyさん
2014/03/05(水) 02:02:07.37ID:???プロセスは一度確保したメモリは解放しないことが多いよ
これはRubyレベルの問題ではなく、OSレベルの問題
それ以前の問題として、巨大な文字列を作らずに済む方法があるんだから
まずはそれを試したらどうだい?
0211nobodyさん
2014/03/05(水) 02:05:30.78ID:???0212nobodyさん
2014/03/05(水) 03:13:39.75ID:???0213nobodyさん
2014/03/05(水) 07:19:15.16ID:???手元で書いて動くコードは1分でできるのに、
例外処理をして9割の完成度に上げるのには、とてつもなく時間がかかる場合がある
http://el.jibun.atmarkit.co.jp/rails/2011/09/web9-1e8b.html
スタートアップ企業で8年間Webの開発をしてみての反省点いろいろ - Masatomo Nakano Blog
6. サーバ周りの人材をしっかり確保しよう
http://b.hatena.ne.jp/entry/blog.madoro.org/mn/84
Ruby on Rails が簡単というのはウソ - #生存戦略 、それは - subtech
http://subtech.g.hatena.ne.jp/secondlife/20120309/1331279496
今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」 | つい全力ツッコミしてしまうエンジニアCEOのブログ | sumyapp
http://b.hatena.ne.jp/entry/blog.sumyapp.com/2013/07/no-recommend-rails/
0214nobodyさん
2014/03/05(水) 11:34:41.73ID:???普通は他のプロセスが利用しようとしたら手放すよ
RubyはGCに問題が多々あるといわれるから、そこじゃねか
0215nobodyさん
2014/03/05(水) 23:11:59.25ID:???C言語のfree()とかってOSレベルではメモリ解放してるわけじゃないのかな
0216nobodyさん
2014/03/05(水) 23:41:07.71ID:???巨大メモリを使わないようにするか、fork するなどして別プロセスで動かすようにするかのどっちか
0217nobodyさん
2014/03/05(水) 23:44:19.51ID:???常駐の体を成してないよねそれ
0218nobodyさん
2014/03/05(水) 23:45:29.65ID:???すげー興味でてきた
0219nobodyさん
2014/03/05(水) 23:47:43.77ID:???使わなくなったメモリを再利用すれば多くの場合は問題ない
巨大な文字列などは連続した領域が必要なので再利用できない場合がある
チビチビ使う方が再利用しやすい
0220nobodyさん
2014/03/05(水) 23:51:55.94ID:???フラグメンテーションとかそういう話だっけw
文系出身な俺には重いな
0221nobodyさん
2014/03/05(水) 23:55:29.43ID:???そうそう
RubyのGCはメモリコンパクション(デフラグメンテーション)をやらないので、今回ような使い方をすれば問題になる可能性がある
0222nobodyさん
2014/03/06(木) 01:11:41.99ID:???Rubyが採用してるGCのスタイルがコンパクションと相性悪いとか何とか
0223nobodyさん
2014/03/06(木) 10:57:14.72ID:???0224nobodyさん
2014/03/06(木) 15:47:34.23ID:???0225nobodyさん
2014/03/08(土) 01:09:20.34ID:???http://itpro.nikkeibp.co.jp/article/Interview/20131022/512834/
マカフィー株式会社 | McAfee Blog -高度なマルウェアに関する神話 第1話: 『課題は、高度なマルウェアは検知できないということだ』
http://www.mcafee.com/japan/security/mcafee_labs/blog/content.asp?id=1379
New York Timesの記事によれば、同紙は米Symantecのウイルス対策製品を使っていたが、
Mandiantが調べた結果、攻撃者が使った45種類のカスタム版マルウェアのうち、Symantecの製品で検出できたのは1種類のみだったという。
http://bylines.news.yahoo.co.jp/yamamotoichiro/20130204-00023332/
ソニーPSNの個人情報漏洩に英国で約3500万円の罰金支払い命令、「防げた事件」と判定 - Engadget Japanese
http://japanese.engadget.com/2013/01/24/psn-3500/
Adobeにサイバー攻撃、顧客情報290万人分抜き取り、製品のソースコードも -INTERNET Watch
http://internet.watch.impress.co.jp/docs/news/20131004_618168.html
0226nobodyさん
2014/03/09(日) 01:42:11.20ID:givZU1Ab$.get("api/action", {}, function(data) {
$("bar"),append ($(data));
});
def action
render :partial=>"foo"
end
とか書いていたら、dataには改行コードしかありませんでした
コンソール見たら、actionは呼び出されており、指定したパーシャルがrenderされていることは確認できたのですが・・・
0227あ
2014/03/09(日) 02:05:33.45ID:???http://b.hatena.ne.jp/entry/d.hatena.ne.jp/yuum3/20120903/1346653974
0228nobodyさん
2014/03/09(日) 19:10:25.85ID:???get 'articles/edit'
post 'articles/preview'
post 'articles/post'
class ArticlesController < ApplicationController
def edit
end
def preview
end
def post
end
end
こんな感じで、編集画面でフォーム送信 → プレビュー → プレビューで確認して投稿 というのを考えてましたが、
edit → preview でfile_fieldの値が引き継がれません。
file_fieldの値を別の画面に引き継ぐことは無理なのでしょうか?
0229nobodyさん
2014/03/09(日) 19:20:09.30ID:???0231nobodyさん
2014/03/09(日) 21:40:32.82ID:???すいません
他にどの辺りのソースも書けばいいでしょうか・・・
>>230
無理なんですか・・・
ユーザがアップロードした画像をメモリの中におさめて別の画面の<input type="file">にセットするとかはできないんですね・・・
0233nobodyさん
2014/03/09(日) 23:24:37.25ID:rV1atWDh投稿に確定フラグを用意して、
確認画面に行くときに確定フラグOFFで保存(画像も)してしまい、
確認取れたら確定フラグをONにする。
別途、長時間(1時間とか1日とか)確定フラグOFFのままのものは、バッチで削除する。
とした。
面倒だし、未確定のものが見えてしまうことを避けるためにscopeの設定に注意、
という残念なアプローチなので、あまりお勧めはしない。
0236nobodyさん
2014/03/09(日) 23:36:35.19ID:???>>233 で分からないようならかなり勉強が足りない
Railsは広範な知識が前提になるから、君にはまだ早いかもしれない
0237nobodyさん
2014/03/09(日) 23:40:35.43ID:???すいません、>>234と>>235は私ではありません
>>233
ありがとうございます
そういう無理矢理な方法を取らないといけないという時点で大きなヒント
IE8ではHTML5も使えないですし、
やはりユーザーが一度プレビューでも確認しようとする画像はサーバーにあげるしかないんですね
0238nobodyさん
2014/03/09(日) 23:42:42.92ID:???HTML5とか関係ないよ
セキュリティ上の制約からfileフィールドに値を与えることは不可能
それができたら、ローカルのファイルを取り放題になるからね
サーバに上げる以外の方法はない
0239nobodyさん
2014/03/10(月) 01:24:02.67ID:???何で悩んでるのかがイマイチ分からん
画像の保存先がDBにしろファイルシステムにしろ
そこへアップするのではなくtmpファイル作る
0240nobodyさん
2014/03/10(月) 02:47:48.52ID:???https://www.google.co.jp/search?q=rails+upload+preview+site%3Astackoverflow.com&oq=rails+upload+preview+site%3Astackoverflow.com
0241nobodyさん
2014/03/10(月) 11:58:24.19ID:???あるビューでは子のレコードを最新の5件だけ、別のビューでは10件という風に
したいんですけど可能でしょうか?
0242nobodyさん
2014/03/10(月) 13:24:50.06ID:???0243「ガスライティング 集団ストーカー カルト」で検索を!
2014/03/10(月) 14:21:04.90ID:CT4FzesB・沢山の人が偏った意見を一貫して支持する
偏った意見でも、集団の中でその意見が信じられていれば、自分の考え方は間違っているのか、等と思わせる手法
・不利な質問をさせなくしたり、不利な質問には答えない、スルーする
誰にも質問や反論をさせないことにより、誰もが皆、疑いなど無いんだと信じ込ませる手法
↑マスコミや、カルトのネット工作員がやっていること
TVなどが、偏った思想や考え方に染まっているフリや常識が通じないフリをする人間をよく出演させるのは、
カルトよりキチガイに見える人たちを作ることで批判の矛先をカルトから逸らすことが目的。
リアルでもネットでも、偽装左翼は自分たちの主張に理がないことをわかっているのでまともに議論をしようとしないのが特徴。
,,,
0244nobodyさん
2014/03/14(金) 06:16:01.68ID:???railsinstaller-2.2.1使用
0245nobodyさん
2014/03/14(金) 07:07:13.95ID:???0246nobodyさん
2014/03/14(金) 08:11:26.02ID:???https://www.ruby-lang.org/ja/news/2013/02/24/ruby-2-0-0-p0-is-released/
default UTF-8 encoding: 多くのマジックコメントが不要に
0247nobodyさん
2014/03/14(金) 08:22:50.53ID:???http://stackoverflow.com/questions/17917660/railsinstaller-2-2-1-fails-on-windows
0248nobodyさん
2014/03/16(日) 00:46:27.85ID:sX6tK28Vテストですよ!\r\nテスト!\r\nテスト!テスト!テスト!
そのまま出すと([email protected])
テストですよ!\r\nテスト!\r\nテスト!テスト!テスト!
こうなるんです
=simple_format @hoge.text
[email protected](/\r\n/, '<br/>')
こんな風にしても
テストですよ!\r\nテスト!\r\nテスト!テスト!テスト!
こうなるんです・・・
MySQLでの\r\nがどうして\r\nで置換できないのでしょうか
0249nobodyさん
2014/03/16(日) 00:49:17.26ID:???0250nobodyさん
2014/03/16(日) 00:54:37.66ID:???0251248
2014/03/16(日) 00:59:39.49ID:???でも確かに.gsub(/\\r\\n/, '<br/>')でしたら置換されました・・・
MySQLで\r\nで登録されている文字列はビューに来る頃には\\r\\nになってるんですか・・・
それでしたら組み込み関数のsimple_formatも使えないことになりませんか?
0252nobodyさん
2014/03/16(日) 01:02:18.80ID:???ちゃんと口で説明しろ
0253nobodyさん
2014/03/16(日) 01:20:55.82ID:5H4+EUWX250が言わんとしている事をもう少し分かりやすく言うと、
今回のケースではMySQLには改行コードではなくて
'¥r¥n'
っていう文字列そのものが入ってる。
Rubyで
print '¥r¥n' # 改行されずに¥r¥nっていう文字列そのものが表示される
と
print "¥r¥n" # 改行される
の実行結果を比較すると理解できるかと。
0254253
2014/03/16(日) 01:25:22.32ID:5H4+EUWXで文字化けしてる部分はバックスラッシュの事だと読み替えてください
0255nobodyさん
2014/03/16(日) 16:29:56.38ID:???0256nobodyさん
2014/03/19(水) 13:34:27.57ID:XfOUweW8この記事と同じところで躓いているのですが、
一番下の「追記 解決しました」はどういうことなのでしょうか?
「テストで作成しているデータが10文字以下だった」ら、
どこをどう変えれば解決するのでしょうか。
0257nobodyさん
2014/03/19(水) 15:28:10.08ID:???0258nobodyさん
2014/03/19(水) 17:20:29.04ID:XfOUweW8レスありがとうございます。
何を10文字より長くすればいいのでしょうか?
0259nobodyさん
2014/03/19(水) 18:33:11.75ID:???0260nobodyさん
2014/03/19(水) 18:46:53.11ID:XfOUweW8descriptionを10文字より長くしても駄目でした。
Failed assertion, no message given.
1 failures
のままです。
0262nobodyさん
2014/03/20(木) 10:48:45.83ID:???コントローラごとに適用されるCSSを分けることは出来ないのでしょうか?
0263nobodyさん
2014/03/20(木) 17:48:14.89ID:???<body class="<%= controller_name %>">
と書き換えて、後は scss で分ける。
scss だったら一段階層を増やしてあげるだけ。
0265nobodyさん
2014/03/23(日) 21:14:41.33ID:???http://www.itmedia.co.jp/news/articles/1403/23/news011.html
KADOKAWAの公式サイトが改ざん 閲覧者がマルウェア感染の恐れ - ITmedia ニュース
http://www.itmedia.co.jp/news/articles/1401/17/news047.html
0266nobodyさん
2014/03/25(火) 10:58:40.13ID:cbd1slMBアプリケーションを作っている途中、カートを作るところまでいったのに
サーバーを実行しても、初期の"Welcome aboard"のページになってしまう
ようになってしまいました。
ファイルはあるのですが、ファイルを読み込むようにすることはできるのでしょうか。
0267nobodyさん
2014/03/26(水) 06:35:55.97ID:XaAxxKBe0268nobodyさん
2014/03/29(土) 08:51:33.04ID:???[[親A.-子1-孫1], [親A-子2.], [親B-子1-孫1], [親A-子1-孫2], [親C]]
のような配列があり、各関係はハイフンで区切られています
この配列を
[親A[子1[孫1,孫2],子2], 親B[子1[孫1]], 親C]
のように親子関係を、同じ位のものは同じ階層の配列に
下のものはその中に配列として格納
というようなことをしたいのですが、rubyに慣れておらずサンプルコードいただけませんでしょうか
0269nobodyさん
2014/03/29(土) 11:06:27.49ID:???0270nobodyさん
2014/04/04(金) 17:14:47.47ID:???既存アプリをベースに新規アプリを作りたいのですが
既存アプリはDBの拡張ライブラリを使っていた時期があって
その環境を整えないとmigrationが通らないのですが今は使っていないのでスキップしたい
0271nobodyさん
2014/04/04(金) 17:17:55.16ID:???サンクス
0272nobodyさん
2014/04/05(土) 11:38:17.94ID:???http://www.kyoto-u.com/lounge/tokeidai/html/200602/06020020.html
0273nobodyさん
2014/04/05(土) 12:55:04.90ID:???0274nobodyさん
2014/04/05(土) 13:57:23.96ID:???0275nobodyさん
2014/04/06(日) 00:47:41.08ID:???コーディングなんかよりも
環境のデプロイが辛すぎる
使い慣れたgemを使おうにも
新たに契約したVPSでは
毎度のこと環境(選択できるOS)が変わる
それに合わせてRubyだのPHPだのphp-fpmだのnginxだのapacheだのImageMagickだのと入れていくわけだが
バージョン相違の依存度のせいで動かなくなったりエラーが出たり頻発
いろいろ試してやっとで動かせるようにしても
また次回も新たにホスティングを契約すると同じことをしなくちゃならない
これだけで実に丸2〜3日は掛かる
正直辛すぎる
0276nobodyさん
2014/04/06(日) 00:54:26.05ID:???コマンド一つで
決められた環境を全てデプロイしてくれるような自動化が作れればいいのになぁ
0277nobodyさん
2014/04/06(日) 03:26:20.30ID:???0279nobodyさん
2014/04/06(日) 08:16:32.72ID:???vagrant
docker
0280nobodyさん
2014/04/06(日) 09:34:39.96ID:???0281nobodyさん
2014/04/06(日) 23:13:05.66ID:???http://itpro.nikkeibp.co.jp/article/Interview/20131022/512834/
マカフィー株式会社 | McAfee Blog -高度なマルウェアに関する神話 第1話: 『課題は、高度なマルウェアは検知できないということだ』
http://www.mcafee.com/japan/security/mcafee_labs/blog/content.asp?id=1379
New York Timesの記事によれば、同紙は米Symantecのウイルス対策製品を使っていたが、
Mandiantが調べた結果、攻撃者が使った45種類のカスタム版マルウェアのうち、Symantecの製品で検出できたのは1種類のみだったという。
http://bylines.news.yahoo.co.jp/yamamotoichiro/20130204-00023332/
ソニーPSNの個人情報漏洩に英国で約3500万円の罰金支払い命令、「防げた事件」と判定 - Engadget Japanese
http://japanese.engadget.com/2013/01/24/psn-3500/
Adobeにサイバー攻撃、顧客情報290万人分抜き取り、製品のソースコードも -INTERNET Watch
http://internet.watch.impress.co.jp/docs/news/20131004_618168.html
0282nobodyさん
2014/04/08(火) 11:49:50.27ID:???http://www.itmedia.co.jp/enterprise/articles/1403/28/news118.html
0283nobodyさん
2014/04/18(金) 00:39:33.69ID:???今すぐ辞めて欲しい、「Ruby on Rails勉強してます」
http://blog.sumyapp.com/2013/07/no-recommend-rails/
で、記事の途中にこんなくだりがあった。
>この記事にぐさっときた人、プログラミング初心者にとっておすすめしたいのはこの書籍だ。
>なれる!SE 2週間でわかる?SE入門 (電撃文庫)
>ぜひ頭の硬いプログラミング見習いの方には読んで頂きたい。技術職における最も大事なことはこの本に全て書いてある
やはりをなれるSEを読むようなクレバーな技術者はRuby on Railsなんてオモチャは
遠ざけるのだな。
0284nobodyさん
2014/04/18(金) 03:16:15.18ID:???0285nobodyさん
2014/04/18(金) 11:10:09.23ID:???結局DB、SQLやWebサーバの詳細を結局勉強するはめになるわけで、
アセンブラやC言語を知らずにRubyを使えるレベル、とまでにはなってないよね。
いきなりRailsをやるより、PHPとApacheで素のWEBアプリをまず作ったり
した後の方がRailsのありがたみが良くわかるんじゃないだろうか。
0288nobodyさん
2014/04/18(金) 19:51:14.01ID:HvjAAhgyより
http://www.hoge.com/index/パラメーター
のほうがSEOはいいのでしょうか?
0289nobodyさん
2014/04/18(金) 20:36:48.22ID:???素のRubyとの比較だと、やっぱりPHPの方が何かと簡単だ(例えばSessionとか)。
個人的には、Rackから始めるのがいいと思うが、Rackを入り口に扱っている情報ってあんまりないよね。
0290nobodyさん
2014/04/19(土) 16:05:29.73ID:h92l0MdqWeb制作板のスレタイを SEO で探したほうが答えが手に入る可能性が高い
0291あ
2014/04/20(日) 19:26:42.59ID:???パンダアップデート
ペンギンアップデート
0292nobodyさん
2014/04/23(水) 01:16:16.25ID:dat1Z6dq0293nobodyさん
2014/04/23(水) 09:41:35.29ID:???https://www.google.co.jp/search?num=100&q=favorite+rails%E3%80%80site%3Astackoverflow.com
0294nobodyさん
2014/04/24(木) 01:05:04.94ID:Xeh6xycuhas_many :tagging,
has_many :tags, :through=>:tagging
end
class Tag < ActiveRecord::Base
has_many :tagging
has_many :products, :through=>:tagging
validates :text, :presence=>true, :uniqueness=>true
end
class Tagging < ActiveRecord::Base
belongs_to :product
belongs_to :tag
end
こういう状態で、ProductのページでTagも追加するようなフォームを作っているのです。
= form_for(@product) do |f|
= f.fields_for :tags do |f2|
= f2.hidden_field :id
= f2.text_field :text
しかし、
�@入力したタグがDBに存在しない場合は、tagsに新レコード追加し、taggingも更新
�A入力したタグがDBに存在する場合は、taggingだけ更新
という挙動を期待しているのに、実際は、POSTされたtagsのパラメーターにidが存在しない場合は、
常にtagsを新規作成しようとしてしまいます(結果として、ユニーク制約に引っ掛かってエラー)
望むような挙動をさせたい場合はどうすればいいのでしょうか?
既存のtagはセレクトボックス、新規作成の場合はテキストボックスなどでわけられるのが理想なのですが・・・
0295あ
2014/04/24(木) 09:03:50.11ID:???オーストラリアのセキュリティ専門家が先月に実施したGitHubの検索では、約1万件のAWS 認証情報が発見されている。
http://ascii.jp/elem/000/000/886/886650/
0296nobodyさん
2014/04/24(木) 12:42:49.45ID:???taggingはproductに毎回付随していて、tagは全てのタグの一覧と言う認識でOK?
それならfields_forで入力させるのはtaggingで、taggingを保存する際にafter_saveで
そのタグが新規かどうかを判定して新規ならtagsを保存すればいいんじゃないのかな
といっても要件がよく理解できてないから的はずれかも
0297nobodyさん
2014/04/24(木) 19:50:38.29ID:???ありがとうございました。
ただし fields_forで:taggingを指定しても出てこないです・・・。
0298294, 297
2014/04/24(木) 20:10:06.47ID:???ありがとうございました。
0299あ
2014/04/25(金) 16:27:02.89ID:???http://www.atmarkit.co.jp/ait/articles/1404/24/news172.html
運用中のApache Webサーバの大半にセキュリティ脆弱性 | マイナビニュース
http://news.mynavi.jp/news/2014/02/11/038/
0300nobodyさん
2014/04/25(金) 20:15:36.90ID:???http://pb-times.jp/P_529d87c5b28d6
0301nobodyさん
2014/04/29(火) 16:24:14.83ID:???0302あ
2014/04/29(火) 20:13:42.89ID:???その4つとは、
Create(生成)、
Read(読み取り)、
Update(更新)、
Delete(削除)である。
ユーザインタフェースが備えるべき機能(情報の参照/検索/更新)を指す用語としても使われる。
ttp://ja.wikipedia.org/wiki/CRUD
0303nobodyさん
2014/04/29(火) 23:21:27.82ID:???scaffold - (建築・修繕・改装の際の)足場, 仮構え (scaffolding);
(高層建築のガラス窓拭き用や画家の制作の際の)つり足場, (高所作業用の)ゴンドラ
(研究社 新英和大辞典 第6版から引用)
0304nobodyさん
2014/04/30(水) 14:47:16.19ID:???ぶっちゃけ商用レベルで管理画面作る時は使わない
手軽にRESTfulなMVCモデルを作れるものくらいの認識
0305nobodyさん
2014/04/30(水) 22:15:24.71ID:CrhybghXなるほど、thx!
0306あ
2014/05/07(水) 01:41:55.35ID:???http://weblog.rubyonrails.org/2014/5/6/Rails_3_2_18_4_0_5_and_4_1_1_have_been_released/
0307nobodyさん
2014/05/07(水) 22:53:01.45ID:???これってRails2.0時代の記法なんですかね?
3.2とか4系だとfindは検索したい列名しかとらない気がするんですが
0309nobodyさん
2014/05/08(木) 23:23:32.55ID:???ありがとうございます
bullet使っていると、:includeつけろってうるさいんですが
これってこのgemが3系のまま変わってないってことですよね
0310nobodyさん
2014/05/09(金) 00:04:20.97ID:???とりあえずこの辺読んでRails3以降のクエリの書き方をお勉強なされ
http://guides.rubyonrails.org/active_record_querying.html
0311nobodyさん
2014/05/13(火) 00:47:11.48ID:jc+wbYf6thank you.
you are good japanese!
0312nobodyさん
2014/05/13(火) 16:10:33.81ID:???0313nobodyさん
2014/05/13(火) 23:07:46.16ID:???0315nobodyさん
2014/05/14(水) 22:34:19.83ID:???という皮肉かと
0316nobodyさん
2014/05/14(水) 23:43:03.92ID:0Cc29kMyself.class.nameがnilです。
名前がないクラスなんですかね?
0317nobodyさん
2014/05/16(金) 21:13:11.48ID:uX+vzxIxいや、俺が質問者で、英語の検索結果くれたから、英語で返事したんだよ。
当方TOEIC900近くはあるから問題なく読めて解決した。
皮肉のつもりはないよ。ありがとさん
0318nobodyさん
2014/05/17(土) 19:48:44.85ID:???スパイソフトを埋め込んだ米国製PC、ルーター、サーバーが、日本を含む世界へ拡散
http://www.amazon.co.jp/gp/product/4105066919
0319nobodyさん
2014/05/18(日) 23:12:34.62ID:hk8drueV0320nobodyさん
2014/05/18(日) 23:16:10.04ID:???ggrks
https://www.google.co.jp/search?q=rails+%E7%94%BB%E5%83%8F+%E8%A4%87%E6%95%B0+%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89
0321nobodyさん
2014/05/18(日) 23:23:47.40ID:hk8drueVできればjquery-fileupload-railsあたりを使いたいと考えています。
jquery-fileupload-rails+carrierwave+Rails4このあたりで詳細サイト知っていたら教えて下さいませんか?
0322nobodyさん
2014/05/18(日) 23:33:47.58ID:???3のサイトのやつを4で試して動かなかったらまた聞けばいい
まずは試せ、手を動かせ
0323nobodyさん
2014/05/21(水) 16:47:14.11ID:???0324nobodyさん
2014/05/22(木) 21:33:08.41ID:???例えばvalidation。
多対多(Hoges : Moges)の関係にあるモデルの一方(Moge)をsaveしようとすると
"Hoge can't be blank"というvalidation errorが発生して
saveが失敗してしまい困った記憶がある。
慣れないfield_forを使っていたせいもあり、
どうしたら良いのか分からずその時は敗北宣言的に迂回してしまったが、
未だに気になってる。そういうのがチラホラあるので勉強しなきゃなと。。
0325nobodyさん
2014/05/22(木) 22:21:50.23ID:R9eMlpe5例えば上野浅草エリアとか
0326nobodyさん
2014/05/22(木) 23:02:48.21ID:???0327nobodyさん
2014/05/22(木) 23:41:19.05ID:???0328nobodyさん
2014/05/23(金) 11:57:24.92ID:???0329nobodyさん
2014/05/23(金) 14:47:19.40ID:stzGS3lF0330nobodyさん
2014/05/23(金) 15:25:30.61ID:???0331nobodyさん
2014/05/23(金) 21:14:44.51ID:shajvKcu良い例見つけました!
こういうので住所入れたらエリアが自動で出てきます。
この仕組みが知りたいっす。
0332nobodyさん
2014/05/23(金) 22:34:01.29ID:???0334nobodyさん
2014/05/24(土) 21:26:52.46ID:1qo8C4LdDocuments/Aptana Studio 3 Workspace/sybentpro/app/controllers/application_controller.rb:1:in `<main>': uninitialized constant ActionController (NameError)
0335nobodyさん
2014/05/25(日) 16:55:17.98ID:???0336nobodyさん
2014/05/26(月) 02:20:32.01ID:5+hysLvgありがとうございます!
>>333
api使えば世界対応も可能っちゅうことかもしれませんね。あざす!!
0337nobodyさん
2014/05/28(水) 01:47:46.31ID:???0338nobodyさん
2014/05/28(水) 07:08:14.63ID:???0340nobodyさん
2014/05/28(水) 08:45:35.41ID:???0342nobodyさん
2014/05/28(水) 13:52:34.02ID:???0343nobodyさん
2014/05/31(土) 18:11:46.95ID:???@instance = nil
@instance = Model.new
ってやる以外にいい方法ないでしょうか?
動的にModelを変更したいのでカラム名などがリテラルで書けないので、なんか良い方法ないかなと思ってます。
0344nobodyさん
2014/05/31(土) 18:38:38.82ID:J5yjoJnZ0345343
2014/05/31(土) 19:24:39.23ID:???ありがとうございます。@instance = Model.new だけで十分でしたね。。
0346nobodyさん
2014/05/31(土) 19:24:52.08ID:???0348nobodyさん
2014/05/31(土) 20:33:30.11ID:J5yjoJnZ0349nobodyさん
2014/05/31(土) 21:36:29.54ID:???0350nobodyさん
2014/06/01(日) 17:47:59.67ID:MVvg2g7wあれって、何個まで表示するとか、何かやっておかなければならないアルゴリズムってあるんですか?
海外バージョンでもやるとしたら、また気をつけなきゃならんことがありますでしょうか?
グーグルだけでもいけちゃいますかね?
0351nobodyさん
2014/06/01(日) 19:47:49.55ID:???0352nobodyさん
2014/06/02(月) 01:04:22.83ID:cdjAC42fすんません。ざっくりとしかイメージがわいていないのでw
国内対応だけだったら駅と緯度経度データベース作って、距離検索でしょうけど。グーグルとかの最寄駅はどういうアルゴで出るのかね。
海外対応までしようと思ったらグーグル使わんとにっちもさっちもいかんのか。
経験者がいれば、ざっくりとした回答が欲しかった
0353nobodyさん
2014/06/02(月) 17:13:24.71ID:???表示中のランドマーク取得でいけそう
0354nobodyさん
2014/06/02(月) 21:41:15.02ID:IKV43VQr<label>の生書きでなく、f.labelを使ってできませんか?
この方が書いてるもう一個の方法はできるのですが、labelのブロックで色々大きさとか調節したいんです。
http://gpsoft.dip.jp/hiki/?Rails%A4%C7%A5%C1%A5%A7%A5%C3%A5%AF%A5%DC%A5%C3%A5%AF%A5%B9%A4%CE%A5%E9%A5%D9%A5%EB%A4%F2%A5%AF%A5%EA%A5%C3%A5%AF%A4%B9%A4%EB
•<input>を<label>の子要素とする
<label><input type="checkbox" name="check1" />Check1</label>
0355nobodyさん
2014/06/03(火) 08:00:47.64ID:???すればいいじゃん
0356nobodyさん
2014/06/03(火) 08:59:59.19ID:???http://dev.classmethod.jp/smartphone/swift/
米アップル、iOSアプリの新開発言語にSwiftを導入
http://ggsoku.com/2014/06/ios-8-swift/
米アップルは2日(現地時間)、iOS 8に新開発言語「Swift」を導入すると発表した。
Swiftは非常に軽快に動くことが特徴であり、Objective-CとC言語の中間に位置するようなイメージであるという。
コード体系はC言語を踏襲。
CocoaやCocoa Touchに対応することはもちろん、LLVMコンパイラを利用してビルドされる。
LLVM
http://ja.wikipedia.org/wiki/LLVM
LLVM とは、コンパイル時、リンク時、実行時などあらゆる時点でプログラムを最適化するよう設計された、任意のプログラミング言語に対応可能なコンパイラ基盤である。
LLVM は、JavaとJava VMの関係のように、まず仮想機械をターゲットとした中間コード(ビットコード)を生成し、その仮想機械向けコードを特定のマシンの機械語に変換する。
playgrounds を使うとインタラクティブに実行できる。
https://developer.apple.com/library/prerelease/ios/referencelibrary/GettingStarted/LandingPage/Art/largeshot_2x.png
0357nobodyさん
2014/06/03(火) 12:38:52.70ID:???0358nobodyさん
2014/06/03(火) 17:17:13.70ID:???コントローラのメソッドから特定の返り値を取得したいのですが、
stubを使って書く際のObjectをどのように指定したら良いか分かりません。
[ここに何かが必要だと思うけど分かりません].stub(:method).and_return(value)
スタブで取得することは可能でしょうか?
可能な場合どのようにオブジェクト指定したらよいのでしょうか?
0359nobodyさん
2014/06/03(火) 20:38:27.53ID:Ip12GRTVえぇ、それはできますよ。
>>354にある通り、ラジオボタンやチェックボックスを内包したラベルを作りたいのです。
これがrailsから導く方法が難しいんですよね。
0361nobodyさん
2014/06/04(水) 19:29:38.02ID:6xizC0Eiなるほど。なかなかハードル高そうですが、手っ取り早く記述だけで何とかなるもんじゃないんですね。
先の例のもう片方のように。
0362nobodyさん
2014/06/04(水) 20:10:21.69ID:???<% f.label 'check1' do %>
<font size=7>Check1</font>
<% end %>
0363nobodyさん
2014/06/04(水) 21:51:45.24ID:efQEBuMUありがとうございます!!!!!
さすがです!!
0364nobodyさん
2014/06/06(金) 05:18:00.21ID:???今までDeviseとconfirmableを使い
メール認証のみで会員登録制度を強いてきました。
しかし、この度OmniAuthを使い
FacebookやTwitterを利用し当サイト利用の敷居を低くしようと思っています。
しかし気になる問題があります。
今までは会員登録だったため
登録が行われると
UserテーブルにUserレコードが生成され
且つ関連テーブルのProfileにもレコードが出来ていました。
Userには登録メアドのemailカラムを含め、アカウント名であるaccountカラムが、
Profileにはニックネームのnicknameカラムなどがあります。
そして、会員が投稿すると、これらアカウント名やニックネームが表示されたり、
サイト内でのメッセージのやりとりはemail宛へ転送されます。
もし、facebookやtwiter認証した場合はこれらは全てnilになりますよね?
OmniAuthで認証した会員の場合はUserレコードやProfileレコードは生成されませんよね?
となると、何を元に誰が投稿したのか?といったものを取得できるのでしょうか?
0365nobodyさん
2014/06/06(金) 05:59:22.66ID:???0366nobodyさん
2014/06/06(金) 06:25:27.83ID:???そこらへんをどうするかイマイチぴんと来ていません
調べたところOmniAuthでもTwitterの場合だとメアドが取得できないみたいなので
どのようにして正しいメアドを取得してUserテーブルのemailカラムに格納するか?
今までの数千に渡るユーザーのuid(ユニーク)はどうするかなど
似たようなこと(deviseのメール認証必須会員登録制→OmniAuthでTwitter、Facebookでも登録できるように)をしたことある人がいたらアドバイスをください
0367nobodyさん
2014/06/06(金) 06:34:40.87ID:???初ユーザーが訪問
↓
Facebookアカウントで登録ログイン
↓
トークンごしに取得できたauth['name']など
ユーザーの各種情報を利用して
Userレコードを追加(メール認証しなくてオーケー)
それ以降のコールバックについては、userレコードが存在する場合はuserレコードの追加は行わず
ただのログイン処理だと見なす
ただし、この場合Twitterだけメアドが手には入らないから切り分けが必要そう。。。。
そもそも登録の際にニックネームとメアドしか聞いてなかったから
Twitter認証してメアド登録してもらうほうが手間がかかってしまう気がする。。。。
0368nobodyさん
2014/06/08(日) 10:47:59.45ID:???なんらかのリンクをクリック
非同期通信
結果を表示
という事をよくやるのですが、大抵のサイトではクリックしたあとにグルグルと画像が回ると思います
これをRailsでやろうと思うとjqueryで無理やりフックしないとダメですか?なにかしらスマートな方法がないかなーと考えていたのですが
0369nobodyさん
2014/06/08(日) 13:59:51.28ID:???0370nobodyさん
2014/06/08(日) 14:19:06.97ID:???0371nobodyさん
2014/06/08(日) 14:27:10.31ID:???0372nobodyさん
2014/06/11(水) 12:14:10.18ID:???アクティブユーザーがそこそこ賑わっていて常にユーザー情報の更新や
投稿が行われるサイトは
よーく設計してdalliとかredisを使いつつページキャッシュやフラグメントキャッシュも使いこなさないと激重くない?
indexとかも貼るべきには貼ってるし検索とかはsolrを使ってる
しかし糞重い
ページがサクサクロードできるようなサイトって
変更あったら書き出してページキャッシュか何かにしてんの?
さくらVPS SSD2GB 2コアを使ってても
こんなに遅く感じる
0373nobodyさん
2014/06/11(水) 13:54:35.52ID:???何が重いの?プロファイリングしてみた?
Railsで重いサイトは大体は集約関数周りでこけてることが多いな
ページキャッシュはある程度の規模からやってるとは思うけど
フラグメントキャッシュまでやってるところはあまりなくね?
0374nobodyさん
2014/06/11(水) 15:08:34.00ID:???miniprofiler使ってる
時間がかかってるのは
複数のテーブルを紐づけて
関連先のカラムでソートかけて取り出したりとかが重いね
それにロードするごとに沢山のコードが動く
会員制だから仕方ないよね
ちなみに会員制敷いてると
ページキャッシュ無理じゃね?
0375nobodyさん
2014/06/11(水) 15:15:12.82ID:???カウンターキャッシュみたいに
countカラムを用意するのが定石?
そしてメッセージの送信後に送信先相手のcount件数を計って更新ってな具合にすべきかな?
0376nobodyさん
2014/06/11(水) 15:53:19.51ID:???各会員専用が主だとページキャッシュは無理だね
一部なら、そこだけ非同期にしてキャッシュする
MySQLかな?JOIN先ソートとか苦手だけど、それが重いなら対処すべきよ
きちんとインデックス使われてるのかね?
たくさんのコードってSQL?会員制だから仕方ないとかは内容次第だろうね
共通部分をできる限りキャッシュするしね
0377nobodyさん
2014/06/11(水) 20:13:40.78ID:???0378nobodyさん
2014/06/11(水) 20:36:00.81ID:???一部ならそこは非同期ってなると
結局フラグメントキャッシュになるよね?
>>376, >>377
そうMySQL
きちんとインデックスって
これらを守ってインデックス貼ってるんだけど
・○○○_idなどアソシエーションに使われるカラムには全てindexを貼っている
・検索対象となるカラムには全てindexを貼っている(且つsolrを利用)
0379nobodyさん
2014/06/11(水) 20:36:33.73ID:???0380nobodyさん
2014/06/11(水) 20:37:05.37ID:???そんなに早いの?
ニコ生みたいにリアルタイムで更新されまくるような仕組みもイケちゃう系?
0381nobodyさん
2014/06/11(水) 20:38:21.89ID:???SQLクエリ見たところで
何がボトルネックになって
こんなに時間がかかってるのか分からない
1つのコード実行した、それだけでも時間がかかりまくってるし
0382nobodyさん
2014/06/11(水) 20:40:37.57ID:???非同期部分を除いてキャッシュするって意味
フラグメントキャッシュは概念全然別
>>381
時間がかかっていることが多いSQLの実行計画を見るのは定石
0383nobodyさん
2014/06/11(水) 21:41:42.39ID:???0385nobodyさん
2014/06/12(木) 05:44:15.06ID:???キャッシュも殆ど使ってないしリアルタイム制すごい高いけど余裕で400ms以内で返せてる
Railsが悪いんじゃなくて設計が悪いんじゃない
何が遅いかも調べられてないのにスペックだけ良くしても意味が無いよ
0386nobodyさん
2014/06/12(木) 07:49:02.68ID:???例えば常にアクティブユーザーが100人いたとして
ツイートするごとにユーザーのポイントが加算されるような
究極のリアルタイム性の高い計算と更新が行われるような会員制だと
キャッシュなしじゃ厳しくないか?
0387nobodyさん
2014/06/12(木) 07:50:37.57ID:???ちなみに
apache?
nginx?
だとしたらMySQLの設定側(チューニング)に問題あるのかな
混んでないときでも
1ページ開くときにクエリ実行だけで1300msとかかる
重いページだと3000ms以上
どうなってんだー
0388nobodyさん
2014/06/12(木) 09:36:29.91ID:Jzl38UQKhttp://www.atmarkit.co.jp/news/201004/19/twitter.html
RORのままアーキテクチャの変更で10000%高速化したとな。
ttp://b.hatena.ne.jp/entry/highscalability.com/scaling-twitter-making-twitter-10000-percent-faster
ミニブログの Twitterのstats(統計)データ。
http://kaworu.jpn.org/kaworu/2008-01-16-2.php
- 350,000を超えるユーザ。
- 秒間600リクエスト
- 平均毎秒200-300コネクション。最大時は秒間800コネクション
- MySQLは秒間2,400リクエストを処理する
- 180のRailsインスタンスがある。MongrelのWebサーバを使っている。
- 1つのMySQLサーバ(1つの大きな 8コアのサーバ)と1つのスレーブ。スレーブは、統計とレポートのための読み込み専用(リードオンリー)。
- 雑用処理をするための30+のプロセス
- 8台のSun X4100s
- Railsでのリクエストの処理時間は200 msec
- データベースにかかる時間の平均は、50-100 msec
- 16GBの memcached
0390nobodyさん
2014/06/13(金) 10:36:58.72ID:???出力時になぜか
○○○.jpg?758856
みたいに訳の分からないパラメーターが勝手につくんだけと
これって無くせる?
0391nobodyさん
2014/06/13(金) 11:00:11.81ID:???0392nobodyさん
2014/06/13(金) 11:12:13.86ID:???えっ?
?173747みたいなのがつくとキャッシュされてるの?
assets使ってprecompileしてるから
?27447みたいなのが付くのかな
これが付くとgoogleの画像検索とかにヒットしなくなりそうじゃない?
0393nobodyさん
2014/06/13(金) 16:06:57.01ID:???Rails関係ないからこれはおまけだからな!
画像ファイルをキャッシュする設定にしていた場合ブラウザは
「キャッシュが残っていればそれを使うし、サーバーには問い合わせない」
から、サーバー上でファイルを変更してもその変更したファイルを取得してくれない
これは画像だけじゃなくてcssとかもそう。変更したのに変更されてない不具合の9割はこれ
その対策としてどうすればいいかというと
hoge-hoge.jpgってファイルを使っていたなら、ファイル名をhogehoge-hoge2.jpgみたいに変更すれば違うファイルとして扱われるからキャッシュを無視してリロードしてくれる
でも全ファイル毎回ちょこっとずつファイル名かえるなんて正気じゃないよな?
そこで、hoge-hoge.jpg?20140613みたいな感じで?とキーを送る、そうすると?以降だけ変えれば違う名前のファイルとしてキャッシュを取り直してくれるんだ
これによって俺らはファイル名を毎回変更するなんて手間をかけずにみんなに新しいファイルを届けられてるわけだ
んで、この手法はもう15年以上使われてるから画像検索うんぬんとかなんも心配しなくてもいい感じにやってくれるよ
0394nobodyさん
2014/06/13(金) 17:08:50.74ID:???非常にわかりやすい説明をありがとう
なるほどね前回のキャッシュを読み込ませないための工夫だったってことね
そして、Googleなど検索エンジンは
?以降は無視して画像をインデックス化していってくれてるってことか
ありがとう
0395nobodyさん
2014/06/13(金) 19:09:01.06ID:???turbolinksの素晴らしさと優位性を力説してもらえないだろうか?
0396nobodyさん
2014/06/13(金) 20:18:11.06ID:???リンクをクリックすると、ページ遷移ではなく Ajax でサーバにアクセスする
返ってきた結果から body 要素の内容だけ抜き出して置き換えてくれる
またブラウザのヒストリも書き換えてくれるので、戻るボタンもきく
スタイルシートやスクリプトを評価しなおさなくて済む分、早い
プログラマは上記の処理内容をほとんど意識する必要がなく、お手軽
0397nobodyさん
2014/06/13(金) 21:24:40.13ID:???ゲームサーバとしてJSONしか返さんのならrails3で十分?
0398nobodyさん
2014/06/13(金) 22:22:55.28ID:???0399nobodyさん
2014/06/14(土) 00:36:00.18ID:???どれくらい早くなるの?
俺の見解だと
Rails3みたいに違うページをロードしても
同じスタイルシートやjsが指定されていたら
キャッシュから読み込まれるから早い遅いをあまり感じなく思えるんだけど
0400nobodyさん
2014/06/14(土) 00:37:52.20ID:???それにページによってヘッダ内の読み込むjsを変えてる場合
それだとturbolinksは使えないってこと?
要は<head>内のスタイルシートやjsを固定して読み込みを早くしませんか?ってことだよね?
0408nobodyさん
2014/06/14(土) 09:50:36.58ID:???0410nobodyさん
2014/06/14(土) 12:24:13.21ID:???railsが遅い問題とturbolinksで解決できる問題は関係ない
turbolinksが解決してるのはクライアントサイドの速度
レスポンスが遅いのとスループットが低いのを混同する奴がいるけど
アクセスが少なくてもレスポンスの遅さは影響する
Railsが遅いのはRubyとアプリサーバの影響の部分が大きい
フレームワークの性能が悪くて遅いCakePHPなどとは一緒にしてはいけない
0411nobodyさん
2014/06/14(土) 13:16:46.10ID:???Rubyやアプリケーションサーバが覿面に効いてくるのは相当のアクセス数がある場合だけだよ
たいていはDBアクセスがネック
0413nobodyさん
2014/06/14(土) 13:59:30.64ID:???0414nobodyさん
2014/06/14(土) 14:11:20.22ID:???JSONに変換して返すだけの計測は健闘しているけども
DBが絡むとボロボロな結果が出てるよね
0415nobodyさん
2014/06/14(土) 14:13:35.20ID:???RubyのDBアクセスライブラリはほとんどCライブラリのラッパだよ
それがクソってことはCライブラリがクソってことかいな?
>>413
SQLでもパフォーマンスを出すためにはテクニックが必要なように、
ActiveRecordもパフォーマンスを出すにはそれなりのコツは要るね
0416nobodyさん
2014/06/14(土) 14:42:10.53ID:???「メッセージ受信ページ」を開くと、たった10件表示するだけなのに4秒近くかかります。
コードがシンプルなはずなのにページのローディングが遅すぎて問題点も特定できません。どこがネックになっているか分かる方はいらっしゃいませんか?
gem「mailboxer(https://github.com/mailboxer/mailboxer)」
-notifications 10万レコード
-conversations 10万レコード(上記テーブルと対にしている)
-receipts 20万レコード(上記テーブルにぶら下がる。つまり1つのconversations(メッセージ)に対し「送信者」と「受信者」の2レコードがぶら下がる)
上記3テーブルから構成。メッセージのやりとりを可能にするgemが「mailboxer」
これを利用して現在ログイン中の受信メッセージを表示する時に下記のように記述しています。
【コントローラ】
@messages = current_user.mailbox.inbox.page(params[:page]).per(10)
【ビュー】ここで表示しているのは送信者の名前と、送信者のプロフィールページへのリンク。題名とメッセージ詳細ページへのリンク。それと受信日時くらい
<% @messages.each do |m| %>
<tr <%= 'class=unread’ if m.is_unread?(current_user) %> >
<td><%= check_box_tag "id[]",m.id %></td>
<td>
<% if m.is_read?(current_user) %>
既読
<% else %>
未読
<% end %>
</td>
<td> <%= profile_link(m.last_sender) if m.last_sender != current_user %><%= "自分" if m.last_sender == current_user %> </td>
<td><%= link_to m.subject, show_messages_path(:id => m) %></td>
<td><%= today_datetime(m.last_message.created_at) %></td>
</tr>
0422nobodyさん
2014/06/14(土) 15:04:12.96ID:???とりあえず簡単に試せそうだからやってみた
@messages = current_user.mailbox.inbox.page(params[:page]).per(10).includes(:profile)
としたら下のエラーが出たよ
Association named 'profile' was not found; perhaps you misspelled it?)
テーブル名は100%間違えていない
profileテーブルはuserテーブルに属していて「nickname」などのカラムを持つ
なぜエラーになるんだorz
0426nobodyさん
2014/06/14(土) 23:41:06.34ID:???他の言語、フレームワークより高いみたいね
特に海外で
herokuが理由かね?
0427nobodyさん
2014/06/15(日) 06:42:29.71ID:4wiy7qvnhttp://b.hatena.ne.jp/entry/japan.zdnet.com/business-application/sp/35049207/
0428nobodyさん
2014/06/15(日) 18:32:22.22ID:???http://www.computerworld.jp/topics/601/
MySQLにはDDLトランザクション処理がないので、
http://www.infoq.com/jp/news/2009/05/heroku-provisionless-revolution
MySQL :: MySQL 5.1 リファレンスマニュアル :: 12.4.2 ロールバックできないステートメント
http://dev.mysql.com/doc/refman/5.1/ja/cannot-roll-back.html
0429nobodyさん
2014/06/15(日) 18:34:46.84ID:???http://www.excite.co.jp/News/column_g/20140402/Cobs_49962.html
バグ報告に対するMySQL(Oracle)とMariaDBの対応の違い | スラッシュドット・ジャパン オープンソース
http://opensource.slashdot.jp/story/13/09/11/0431225/バグ報告に対するMySQL(Oracle)とMariaDBの対応の違い
0430nobodyさん
2014/06/15(日) 21:18:37.12ID:???しかしphpにはフラレて
mysqlへの接続でGPLでないCライブラリが使えるのはphpだけってのも有名な話
0431nobodyさん
2014/06/15(日) 23:58:13.28ID:???0432nobodyさん
2014/06/16(月) 17:42:43.28ID:???0433nobodyさん
2014/06/16(月) 18:24:31.83ID:???0435nobodyさん
2014/06/16(月) 18:53:02.87ID:???http://tech.a-listers.jp/2014/06/16/dhh-won-lemans/
0436nobodyさん
2014/06/16(月) 20:07:18.06ID:???modelのカラムが全然違うものを無理やりくっつけて、cancanを使うと変になりますか?
model
・admin
・operator
に分ける場合、役割だけが違う。modelの基本的なカラムは大体同じ
・human
・dog
・bird
に分ける場合、基本的なカラムが違う。
これをcancanで分けると、、なんか難しくなる。
ちゃんと説明できてますでしょうか。。
0437nobodyさん
2014/06/16(月) 20:10:14.89ID:???0438nobodyさん
2014/06/16(月) 20:50:56.20ID:???一個一個送信処理書けばそれでいいってのはそうなんですが
0439nobodyさん
2014/06/17(火) 02:21:46.07ID:/dvue0X5ただINFO:Runnningテストファイル名しか表示されなくて、肝心のテスト結果がわからないんだけど、
これってどういうことなの?
0440nobodyさん
2014/06/17(火) 11:52:40.62ID:???何かライセンス問題があるのでしょうか?
MITライセンスですよ
0441nobodyさん
2014/06/17(火) 13:09:28.88ID:???http://nippondanji.blogspot.jp/2009/05/foss-license-exception.html
0442nobodyさん
2014/06/17(火) 23:45:27.91ID:???フォローしてるユーザーのタイムラインの表示ってかなり時間かかっちゃうと思うんですがいい方法ありませんか?
User
id:
account:
Follow
id:
user_id:
follow_id:
Tweet
id:
text:
user_id:
こんな感じのDBだとして
user_ids = Follow.where(user_id: session[:user_id]).select("follow_id")
tweet_list = Tweet.where(user_id: user_ids).order("id DESC")
こういうふうに取得してるんですが取得するデータが増えてくるとめちゃくちゃ重くなります
0445nobodyさん
2014/06/18(水) 08:48:35.40ID:???0446nobodyさん
2014/06/18(水) 11:01:55.47ID:???受託開発でもmysqlを使用するだけであればライセンスは問題ないと思っていました
大体をライセンス譲渡としているので問題なさそうです。他はGPLにすれば良さそうです。無理ならばmysql2をやめる選択でしょうか
0449nobodyさん
2014/06/18(水) 15:32:05.66ID:???- 8台のSun X4100s
- 16GBの memcached
で解決かw
0450nobodyさん
2014/06/18(水) 15:33:31.99ID:???こんなレベル
0451nobodyさん
2014/06/18(水) 17:50:58.41ID:???0452nobodyさん
2014/06/18(水) 19:35:39.49ID:???0453nobodyさん
2014/06/18(水) 19:39:56.36ID:???0454nobodyさん
2014/06/18(水) 23:26:49.31ID:???レコード件数が10万とかに増えてきたらredisとか使わないとダメなの?
ActiveRecordで抽出するときにparams[:page]
使おうが軽くはならない?
0458nobodyさん
2014/06/19(木) 02:07:11.41ID:iQHtmoMn雑談系板に立つプログラミングスレとはえらい違いだよ
wwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0459nobodyさん
2014/06/19(木) 09:42:42.87ID:???0460nobodyさん
2014/06/19(木) 10:10:23.05ID:???ちょっと気になったんだけどどこにチューニングの余地あんの?
Twitter社もこの方法では1000ms以内に結果返すの無理だからって理由で断念して違う手法とったんだが
0462nobodyさん
2014/06/19(木) 10:24:29.06ID:???どう考えてもこれは桁の問題じゃないだろ
10万件程度のデータでもメモリに載り切らなくなるのはわかりきってるしTwitterみたいに大きくないから大丈夫なんて言える問題じゃない
0463nobodyさん
2014/06/19(木) 10:26:31.68ID:???0464nobodyさん
2014/06/19(木) 10:29:14.49ID:???SQLでIN使ってる
0465nobodyさん
2014/06/19(木) 10:39:29.92ID:???横からで悪いんだが今回のケースではどうしても巨大なデータをソートすることになるよね?
>メモリに乗るかどうかで判断してるのはDB触ったことないんだろうな
の意味がわからないから是非教えて欲しいんだけど
0466nobodyさん
2014/06/19(木) 10:47:48.37ID:???SQLスレで解決したのになにをやっている
6桁解決だぞ
0468nobodyさん
2014/06/19(木) 11:53:09.08ID:???だからこの問題に関しては>>462が正解
0469nobodyさん
2014/06/19(木) 12:02:54.22ID:???SQLの勉強からやり直した方が良いよ
>結局もっと数が増えたら
これが桁の問題だろ。>>462は間違い
0470nobodyさん
2014/06/19(木) 12:10:39.42ID:???0471nobodyさん
2014/06/19(木) 12:10:54.46ID:???使ったことがない、勉強しなおせと一方的なレッテル貼り
でも正しい答えは書けない
面白いなあ
0474nobodyさん
2014/06/19(木) 12:19:42.81ID:???その会話はTwitterみたいな”ケタ違い”じゃなくても普通のサイトの規模でも簡単に起こるレベルの問題かどうか
が論点なわけだろ?>>462が言ってるのであってんじゃんお前の読解力がないだけじゃないの
ID出るようにしろよ面倒くさい
0475nobodyさん
2014/06/19(木) 12:37:46.53ID:???まさか OR/M に乗っかったときの話なんてしてないよね?
0477nobodyさん
2014/06/19(木) 12:47:57.82ID:???>ご指摘どおり joinへの置換えを行った所
>10000ms→4000ms→0.04msまで落ちました
0478nobodyさん
2014/06/19(木) 13:50:43.06ID:???0479nobodyさん
2014/06/19(木) 14:05:21.42ID:???0480nobodyさん
2014/06/19(木) 14:28:05.92ID:???40msか
妥当なところ
0481nobodyさん
2014/06/19(木) 17:13:20.21ID:???0482nobodyさん
2014/06/19(木) 17:14:31.41ID:???0483nobodyさん
2014/06/19(木) 18:18:58.48ID:???0486nobodyさん
2014/06/19(木) 20:41:42.67ID:???0487nobodyさん
2014/06/19(木) 22:08:57.26ID:???Railsがひどいんではなく、それを使いこなそうとしないで文句言ってる奴がひどいだけ
今回の件も自分の希望の回答が得られなかったから騒ぎ立てるいつもの煽り教えて君でした
というだけの話
0488nobodyさん
2014/06/19(木) 22:26:15.09ID:???誰もついてこれなくて発狂するっていうのは定説だろ。
過去にも同じことがあっただろ。
0489nobodyさん
2014/06/19(木) 22:35:44.39ID:???バッカだなぁ
SQLスレでこういう回答が得られました
これを実現するにはRailsでどうすればいいですか?
と素直に聞けばまともな回答がとっくに得られてたはずなのに、
「SQLスレでこういう回答があった。はじめからこういうSQLを発行しないRailsはクソ!」
なんて自分のコードが悪いという可能性を1ミリも考えない態度だから荒らし教えて君なんだよ
0491nobodyさん
2014/06/20(金) 04:17:45.22ID:???0494nobodyさん
2014/06/20(金) 09:47:48.90ID:???0496nobodyさん
2014/06/20(金) 09:58:50.73ID:???mysql Ver 14.14 Distrib 5.1.73, for debian-linux-gnu (x86_64) using readline 6.1
0498nobodyさん
2014/06/21(土) 00:27:39.08ID:0sjmaiguどちらが国際的なサイトに有利だと思う?
0499nobodyさん
2014/06/21(土) 00:31:06.09ID:???0500nobodyさん
2014/06/21(土) 00:33:50.02ID:0sjmaigutwitterとかfacebookとか多言語展開するサイトだよ
0501nobodyさん
2014/06/21(土) 00:36:58.46ID:???もうちょっとスレに沿った形で咀嚼してくれよ
0502nobodyさん
2014/06/21(土) 00:40:13.53ID:0sjmaigu小人はスレ違いとかほざいとけ。たかがRoRごときでいつまで住み着いてんだよw手段にすぎないのに
この質問は簡単に見えて英語はもちろん幅広な教養が必要だから、お前みたいに糞みたいな聞き返ししてる時点で対象外
頭悪いから手段の所しか見させられてない雑魚が、無駄な質問してんじゃねえよ
0503nobodyさん
2014/06/21(土) 00:40:57.33ID:???0504nobodyさん
2014/06/21(土) 00:45:01.14ID:0sjmaiguお前みたいなゴミから教わることなんかねえよw
お前は雇われ、俺は雇う方
頭の違い、格の違い、わかるかな?
英語すらまともにできないクズ野郎が、こういう話題に乗ってきちゃあかんよ
何にも付加価値ないからw
誰か我こそはレベル高いって奴がいたら意見書いといて。
参考にしてやるかもしれないから。
ドメ仕事ばっかりやってる>>503みたいなゴミ野郎の意見はいらねえからw
お前等もそんな時間の無駄するより、簡単なRoR極めるために全時間使っとけよw
0505nobodyさん
2014/06/21(土) 00:47:44.23ID:???> 参考にしてやるかもしれないから。
これだけ暴言吐いておいて質問に答えてくれることを期待してるとしたら、
おめでたいにも程がある
0506nobodyさん
2014/06/21(土) 00:54:07.65ID:0sjmaigu期待なんかしてねえよはなから
ここは英語もまともにできないドメ野郎が多いからな
簡単なRoRに定住してる時点でたかがしれてんだよ
元から自分で調査中で、念のためここでも意見募ったが、
案の定お前みたいな安月給のクズが、何の価値もないセリフ吐くだけだったわw
期待通りだなw
またそのうち覗いてやるから、まともな頭の奴が存在してたら意見かいとけよ
採点してやるから
0507nobodyさん
2014/06/21(土) 00:54:59.03ID:???0509nobodyさん
2014/06/21(土) 04:05:07.18ID:???多言語展開って、たとえば英語についてはその二つで考えてるんでしょ?
タイ語だと何にしようと思ってるの?
0511nobodyさん
2014/06/21(土) 08:11:59.00ID:???0512nobodyさん
2014/06/21(土) 12:08:39.96ID:???その件を質問したのは自分です、荒れてしまってすいません……
流れをかえる……それならみなさんが普段使ってるgemなど教えて頂けませんか?
ominiauthとかdeviceとか超有名なものは分かるのですが
意外と知られてない(かも)けれどこれ便利だよーみたいな
自分は
BetterError
https://github.com/charliesome/better_errors
Railsのエラー画面がすごく見やすくなるのでデバッグがしやすくなります
0513nobodyさん
2014/06/21(土) 12:22:09.30ID:???pry かわいいよ pry
今更だけど、元質問に関しては hmt を使えばいいんじゃないかなーと思う
0514nobodyさん
2014/06/21(土) 13:58:17.02ID:???devise
cancan
mailboxer
rails autocomplete
acts as taggable
acts as votable
recaptch
simple captcha
paperclip
bullet
bootstrap
jquery
ここらへんは絶対に使う
0515nobodyさん
2014/06/22(日) 11:21:11.60ID:???Ruby厨の凝り固まった意見が聞きたいです
0516nobodyさん
2014/06/22(日) 11:24:24.18ID:???gem、とか単に「ジェム」って言いたいだけだろ。
どう考えてもcpanmのほうがスマート。
0518nobodyさん
2014/06/22(日) 11:25:24.31ID:???0519nobodyさん
2014/06/22(日) 11:26:59.00ID:???0521nobodyさん
2014/06/22(日) 12:09:57.20ID:???0522nobodyさん
2014/06/22(日) 12:53:13.08ID:???�@5秒に1回ajaxでリロードかけて内容を表示更新してる部分がある
�Aコメントを投稿したら5秒待たずとも同じように表示更新がかかる
�Aのように投稿があったときには
投稿後に「投稿しました」とflashメッセージを更新部分に表示させて3秒でフェードアウトするようにしている。
�Aの投稿後、問題なくflashメッセージは表示され3秒後には消えるんだが
その直後の�@の定期更新がかかると再びflashメッセージが表示されて困ってる
この場合はどう制御したらいいの?
0523nobodyさん
2014/06/22(日) 12:59:10.80ID:???flashにnilいれればいいだけじゃない?
0524nobodyさん
2014/06/22(日) 13:02:32.56ID:???0525nobodyさん
2014/06/22(日) 13:52:29.71ID:???投稿後の表示更新はこんなかんじです
【Controller】
(コメントsaveのコード)
format.js do
flash[:notice] = "投稿しました。"
render 'sections/reload_after_post’
end
【View】
<div id="comment">
<%= render 'sections/comment' %>
</div>
【reload_after_post.js.erb】
$('#comment').html("<%= j(render(:partial => 'sections/comment')) %>");
【sections/_comment.html.erb】
<% flash.each do |name, msg| %>
<div id="flash_message">
<div class="alert alert-<%= name == :notice ? "success" : name.to_s %>">
<%= content_tag :div, msg.html_safe, :id => "flash_#{name}" if msg.is_a?(String) %>
</div>
</div>
<% end %>
(コメント表示のコード)
0526nobodyさん
2014/06/22(日) 13:58:56.77ID:???0527nobodyさん
2014/06/22(日) 14:00:51.51ID:???【Controller】
def reload_part
@comments = @section.comment_threads.order("updated_at DESC").page(params[:page]).per(10)
@comment = @section.comment_threads.build
respond_to do |format|
format.js
end
end
【View】
reloadPart();
function reloadPart() {
$.ajax({
url: “sections/reload_part?page=<%= params[:page] %>",
type: "GET",
dataType: "script",
});
}
<% flash.each do |name, msg| %>
<div id="flash_message">
<div class="alert alert-<%= name == :notice ? "success" : name.to_s %>">
<%= content_tag :div, msg.html_safe, :id => "flash_#{name}" if msg.is_a?(String) %>
</div>
</div>
<% end %>
(コメント表示のコード)
【reload_part.js.erb】
$('#comment').html("<%= j(render(:partial => ‘sections/comment')) %>");
setTimeout(reloadPart,5000);
0528nobodyさん
2014/06/22(日) 14:36:09.95ID:???だから
def reload_part
@comments = @section.comment_threads.order("updated_at DESC").page(params[:page]).per(10)
@comment = @section.comment_threads.build
flash[:error] = nil
flash[:notice] = nil
respond_to do |format|
format.js
end
end
これでいいでしょ
0530nobodyさん
2014/06/22(日) 15:25:21.50ID:???と思ったら解決していませんでした
どうやら他のページに遷移したら
flash[:notice] = nil しているにも関わらず
空の状態でflashメッセージが表示されます(枠だけ)
0532nobodyさん
2014/06/22(日) 18:41:24.73ID:???<% flash.each do |name, msg| %>
<% next if msg.blank? %>
<div id="flash_message">
<div class="alert alert-<%= name == :notice ? "success" : name.to_s %>">
<%= content_tag :div, msg.html_safe, :id => "flash_#{name}" if msg.is_a?(String) %>
</div>
</div>
<% end %>
こんな感じで空だったら省けばええやん、対症療法的だけどソースコード追って根本的解決する元気が無いなら
これでごまかしとけばいいよ
0533nobodyさん
2014/06/22(日) 20:09:06.06ID:???mysqlスレにいい答えが載ってたよ
https://mariadb.com/kb/en/mariadb-client-library-for-c/
みんな、こういうのをいれてGPLとかにしなくて良いようにしてるんだね〜
驚いたよ
0537506
2014/06/23(月) 00:42:04.33ID:vkNI5Agn土日遊びに行く金もないのかな?
bookmarkとfavoriteの件は定まったからもういいよ。君らの脳みそじゃ総合的な判断は難しいようだ。
技術要素であるRoRばっかりやっておきなwほんじゃなゴミども
0538nobodyさん
2014/06/23(月) 02:18:53.51ID:???0539nobodyさん
2014/06/25(水) 04:32:32.03ID:VfeeFhnYhttp://nodejs.connpass.com/
0540nobodyさん
2014/06/25(水) 11:30:52.63ID:???このスレはnode.jsスレになりました。
RoRの話題禁止です。
0541nobodyさん
2014/06/25(水) 11:34:36.39ID:???http://www.publickey1.jp/blog/11/nodejs_node.html
0543nobodyさん
2014/06/25(水) 23:02:42.03ID:???0544nobodyさん
2014/06/26(木) 00:42:45.95ID:???0545nobodyさん
2014/06/26(木) 01:43:45.13ID:???0546nobodyさん
2014/06/27(金) 00:27:44.31ID:Kfr04yi9http://pb-times.jp/P_529d87c5b28d6
0547nobodyさん
2014/06/27(金) 03:23:01.66ID:Kfr04yi9http://b.hatena.ne.jp/entry/qiita.com/kaiinui@github/items/2781219340d427543d08
0548nobodyさん
2014/06/27(金) 16:09:12.42ID:???before_filterの中で
@time =Time.now
してfooterでTime.nowとの差分とってみたんだけど値がマイナスになったりで数値が取れません
0549nobodyさん
2014/06/28(土) 00:11:41.16ID:???var start = Date.now();
// ...
// rendering...
// ...
var end = Date.now();
console.log("Elapsed: " + (end -start));
これでいいだろ。
そりゃ逆にひき算したらマイナスになるんでないかね。
0550nobodyさん
2014/06/28(土) 00:31:50.47ID:???Timeでusec使えば良いよ
他はDateもTimeも秒単位になってしまう
Railsが遅い象徴で秒を測らないとって意味なら自虐ねたとしてOK
0551nobodyさん
2014/06/28(土) 03:51:09.36ID:???Railsのレンダリングならログ見りゃ一発なんだけど
0552nobodyさん
2014/06/28(土) 09:27:19.49ID:???0553nobodyさん
2014/06/28(土) 09:41:37.73ID:???それは上にも書いた通り試したのですがそれをやるとなぜか値がマイナスになったりプラスになったりします
>>550
やってみます
>>551
ログに出力される値をページ上に出力したいです
0554nobodyさん
2014/06/28(土) 11:04:47.12ID:P+7Bvf6W画面の左上に小さく、画面の処理時間を表示
http://qiita.com/natsu871/items/7034e945e4e1f3737d1c
0555nobodyさん
2014/06/28(土) 14:16:20.62ID:???0556nobodyさん
2014/06/29(日) 08:29:00.45ID:FLtC2iyWherokuオフィス訪問 - satomicchyのつぶやき
ttp://satomicchy.hatenablog.com/entry/2014/06/29/042701
0557nobodyさん
2014/06/29(日) 15:37:32.35ID:???@numbers = Number.includes(:user).where(:community_id => @communities.collect(&:id)).order("users.active_time_at DESC").page(params[:page]).per(10)
これだとロードし終えるまでに60秒ほどかかる
どうして?
current_userが所属しているコミュニティを取得して、そのIDを代入するのは時間はかかっていない。
取得した「Numberレコードの所有者」の「active_time_at(関連するUserテーブルの項目)」で並び替えようとすると
異常に時間がかかっている模様。
@communities = current_user.get_up_voted(Community)
@numbers = Number.includes(:user).where(:community_id => @communities.collect(&:id)).order("created_at DESC").page(params[:page]).per(10)
だと2秒もかからないのに
何かいい方法ってありますか?
0558nobodyさん
2014/06/29(日) 15:39:44.67ID:???User: has_many Communities, has_many Numbers
Community: belongs_to User, has_many Numbers
Number: belongs_to User, belongs_to Community
0560nobodyさん
2014/06/29(日) 16:03:58.70ID:???0561nobodyさん
2014/06/29(日) 16:05:05.56ID:???申し訳ない
User: 20,000レコード
Community:100レコード
Number:10,000レコード
ってんかんじで
DBはMySQL5.1.69です
0562nobodyさん
2014/06/29(日) 16:21:27.81ID:???inを使ってるのが問題だから
>>560が言うとおり、hmtを試してくれ
もう一つは、MySQL5.1.69じゃ遅いよ
0563nobodyさん
2014/06/29(日) 16:32:16.95ID:???hmtを試すとは?
それとMySQLのバージョン違いでそんなに遅いもんなんですか?
Rails3.2.11を利用しています
0565nobodyさん
2014/06/29(日) 16:50:28.46ID:???hmtだけでググりましたが
それだけだと抽象的な検索結果しか出てこなくて
何をどうhmtと紐づければいいか分かりません
0567nobodyさん
2014/06/29(日) 17:13:52.73ID:???ありがとう。
rails hmtでググっても今回の件に該当するようなページが出てきませんでした。
rails hmt inも試しましたが同様・・・
0568nobodyさん
2014/06/29(日) 17:15:44.15ID:???rails hmt でぐぐったんなら hmt とはなんぞや?が分かっただろう
だったら hmt を試すことはできるはずだ
分かってないのに言ってるなら今すぐ死ね
0569nobodyさん
2014/06/29(日) 17:18:02.95ID:FLtC2iyWhttp://www.techscore.com/blog/2012/12/25/rails%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E7%B4...
0570nobodyさん
2014/06/29(日) 17:18:39.11ID:FLtC2iyW0571nobodyさん
2014/06/29(日) 17:37:23.16ID:???http://qiita.com/kaiinui@github/items/dad6180f1910c6a4bfd5
Ruby - Railsが時代に合わなくなってきた - Qiita
http://qiita.com/kaiinui@github/items/2781219340d427543d08
0572nobodyさん
2014/06/29(日) 17:54:43.82ID:???Railsに触れるな
0573nobodyさん
2014/06/29(日) 19:22:12.06ID:???rails has_many throughでググるといいよ
0575nobodyさん
2014/06/29(日) 21:29:38.05ID:???なんでRailsにはこう言う変なのが多いのかね?
N+1問題とか、Rails使わなきゃ絶対遭遇しないだろ。糞ライブラリで馬鹿みたいに隠蔽してっからんなザマになんだよ。
ということでRails終了。
0576nobodyさん
2014/06/29(日) 21:31:02.84ID:???N+1問題はORM使ってたらどこにでも発生しうる問題
ActiveRecordに限った話でもなんでもない
ということで>>575はバカ
0577nobodyさん
2014/06/29(日) 21:33:21.79ID:???r: ライオンが
a: あくびをしたら
i: いい感じ
l: LDKが
s: サバンナ状態
h: ハッハッハと笑いが止まらん
m: またこいつだよ例の奴だよ
t: とっとと消えろ
0578nobodyさん
2014/06/29(日) 21:33:59.47ID:???0580nobodyさん
2014/06/29(日) 21:52:10.65ID:???0581nobodyさん
2014/06/29(日) 21:53:16.33ID:???ありがとうございます。hmtってhas_many throughの略だったんですね。。。。
ここでいうNumberテーブルは中間テーブルというわけではありません。
用途を具体的に言えば
User(会員)-Number(電話番号)-Community(携帯キャリア)
のようなかんじです
会員Aさん、Bさん、Cさんがいたとして
Aさんは ドコモ、ソフトバンクの携帯を所持。それぞれの番号(Number)が
090-1111-1111、090-2222-2222
Bさんは auとソフトバンクを所持。それぞれの番号(Number)が
090-3333-3333、090-4444-4444
Cさんは ドコモとauとソフトバンクを所持。それぞれの番号(Number)が
090-5555-5555、090-6666-6666、090-7777-7777
のようなかんじなので、どちらかというと
@numbers = @user.numbers(会員が持つ複数の電話番号一覧)だったり @numbers = @community.numbers(携帯キャリアごとの電話番号一覧) のような使い方をして
number(電話番号)をUserのshowページ)や、Communityのshowページで一覧して表示しています。
@communities = current_user.get_up_voted(Community)
ここでは @numbersを取得するので@numbers = @communities.codes.page(params[:page]).per(10)としても
「undefined method 'codes'」というエラーになりますね
0582nobodyさん
2014/06/29(日) 21:55:02.72ID:???> ありがとうございます。hmtってhas_many throughの略だったんですね。。。。
rails hmt でぐぐればそれぐらい一発で分かる話なんだが、こいつほんとにぐぐったのかね?
0583nobodyさん
2014/06/29(日) 22:03:21.92ID:???0584nobodyさん
2014/06/29(日) 22:50:31.90ID:???0590nobodyさん
2014/06/30(月) 07:20:11.22ID:???Google Apps Unscripted, March 14, 2014
https://www.youtube.com/watch?v=E1CzPtUKWkw
Apps Script Crash Course - Script Editor
https://www.youtube.com/watch?v=ezbH4IJynhU
Google I/O 2012 - Use What You Know: HTML and JavaScript in Apps Script
https://www.youtube.com/watch?v=tcl24asytos
Your First Script - Apps Script Tutorials
https://www.youtube.com/watch?v=Pgfbl_o9WvM
0592nobodyさん
2014/06/30(月) 08:46:11.40ID:???0593nobodyさん
2014/06/30(月) 08:50:39.79ID:???0595nobodyさん
2014/06/30(月) 11:13:18.26ID:???http://b.hatena.ne.jp/entry/e0166.blog89.fc2.com/blog-entry-1174.html
0596nobodyさん
2014/06/30(月) 12:17:09.64ID:STnXsq+30597nobodyさん
2014/06/30(月) 12:46:14.05ID:???0598nobodyさん
2014/06/30(月) 22:59:59.83ID:???@user = User.find(1)
みたいにActiveRecordを使うのは無理なんかな?
0599nobodyさん
2014/06/30(月) 23:02:37.59ID:???0600nobodyさん
2014/06/30(月) 23:38:51.22ID:???なんで
0601nobodyさん
2014/07/01(火) 01:08:38.25ID:nJV1b0sU0602nobodyさん
2014/07/01(火) 01:54:38.36ID:???0605nobodyさん
2014/07/01(火) 20:55:47.96ID:XzNxeXAuhas_namy through を使うと、>>558 は以下のようになるね
(>>558 の Community: belongs_to User は謎)
Users:
has_many Numbers
has_many Communities through Numbers
Communities:
has_many Numbers
has_many Users through Numbers
Numbers:
belongs_to Users
belongs_to Communitys
詳しくは以下のページの「2.4 The has_many :through Association」を参照
・Active Record Associations - Ruby on Rails Guides
http://guides.rubyonrails.org/association_basics.html
他にも様々な関連(アソシエーション)があるから、目的に合ったものを選ぶこと
で、Numbers の user_id と community_id にインデックスを設定すれば、
>>561 で示されたような(たかだか)数万件のデータ量であれば、
>>557 にあるような60秒の応答時間にはならないハズだけど....
もしも応答時間に変化が無ければ、Rails以外に問題があると思う
0606nobodyさん
2014/07/03(木) 01:04:37.84ID:???0607nobodyさん
2014/07/03(木) 01:09:59.72ID:???mysqlの問題だよ
5.6はわからんけど
5.5まではjoinとかサブクエリとかINとか使ったら遅くて使い物にならん
0608nobodyさん
2014/07/03(木) 01:22:03.64ID:???0609nobodyさん
2014/07/03(木) 21:27:15.30ID:lAObJFwKMySQL 5.5 のリリース開始が2011年頃で
しかも has_many through は
すでに Rails 1.0 で実装されていた
そんな3年前のありふれたソフト構成で、
たかが数万件の検索に数十秒を要する性能問題の原因が
MySQL にあるとは考えられない
0610nobodyさん
2014/07/03(木) 23:01:26.64ID:???0611nobodyさん
2014/07/03(木) 23:04:48.64ID:???0613nobodyさん
2014/07/04(金) 00:51:43.59ID:???0614nobodyさん
2014/07/04(金) 02:49:53.83ID:???0615nobodyさん
2014/07/04(金) 02:51:48.01ID:???0616nobodyさん
2014/07/04(金) 04:52:28.37ID:iiWE9XVihttp://b.hatena.ne.jp/entry/japan.zdnet.com/business-application/sp/35049207/
「MySQLが技術的なギャップを縮めてきているものの、PostgreSQLは優秀で人気がある」
http://www.computerworld.jp/topics/601/
MySQLにはDDLトランザクション処理がないので、
http://www.infoq.com/jp/news/2009/05/heroku-provisionless-revolution
MySQL :: MySQL 5.1 リファレンスマニュアル :: 12.4.2 ロールバックできないステートメント
http://dev.mysql.com/doc/refman/5.1/ja/cannot-roll-back.html
0617nobodyさん
2014/07/04(金) 14:38:22.00ID:???0618nobodyさん
2014/07/05(土) 06:16:25.08ID:12HindV20619nobodyさん
2014/07/05(土) 10:38:39.82ID:???上の例に関しては適切にindex貼ってないだけだからrailsもmysqlも関係ないけどね
0620nobodyさん
2014/07/05(土) 10:43:54.42ID:???0621nobodyさん
2014/07/05(土) 12:17:16.21ID:???0622nobodyさん
2014/07/05(土) 13:19:44.90ID:???0623nobodyさん
2014/07/06(日) 01:31:33.21ID:???白蟻対策じゃなくて防蟻対策ということは、蟻側の視点で「どうやって防蟻剤を突破して家を食うのか?」ってこと?
0624nobodyさん
2014/07/06(日) 08:27:50.77ID:vvaN7WsGMooseのような新しい拡張を使ってはいるものの、この言語は柔軟性に欠けていると感じる。
レガシーコードのサポートを避けることはできないので、当分はサポートを続ける予定にしているが、
新たに開発するものに関しては、もっと現代的でWebアプリケーションに使われている言語を使いたいと思う。
フレームワークごと変えてしまってもいい。
http://developers.slashdot.jp/story/14/07/05/0819214/
0625nobodyさん
2014/07/06(日) 09:26:17.63ID:???http://internet.watch.impress.co.jp/docs/special/20120731_549042.html
0626nobodyさん
2014/07/06(日) 11:10:11.87ID:???変更前
数百台のデータベース
変更後
1/10の数十台に減りました
http://kaworu.jpn.org/kaworu/2013-01-23-1.php
0627nobodyさん
2014/07/06(日) 11:44:10.99ID:???0628nobodyさん
2014/07/06(日) 14:13:48.68ID:???0629nobodyさん
2014/07/06(日) 16:06:21.06ID:???http://yosuke-furukawa.hatenablog.com/entry/2014/07/06/094617
0630nobodyさん
2014/07/07(月) 06:18:26.99ID:???0631nobodyさん
2014/07/07(月) 19:40:39.69ID:???0632nobodyさん
2014/07/07(月) 21:32:29.54ID:???0633nobodyさん
2014/07/07(月) 21:42:16.11ID:???developmentモードではhttp://localhost:3000/admin/indexというルートを作りたいんです。
■route.rb
require 'subdomain/admin''
constraints Subdomain::Admin do
namespace :admin, path: Subdomain::Admin.path do
get 'index' => 'bar#index'
end
end
■lib/subdomain/admin.rb
module Subdomain
class Api
def self.matches?(request)
if Rails.env.production?
request.subdomain == "api"
else
request.subdomain.blank?
end
end
def self.path
"api" unless Rails.env.production?
end
end
end
この状態でRails_Env=developmentとRails_Env=productionつけてrake routesすると期待通りの結果になるのですが、
いざhttp://localhost:3000/api/indexにアクセスしたら「uninitialized constant Api」と出てきます…。
bar_controllerにApi::つけたり、app/controller/apiに配置したりしても駄目でした。
どうすればいいのでしょうか?
0634見にくいのでインデントつけました
2014/07/07(月) 21:44:27.53ID:???developmentモードではhttp://localhost:3000/admin/indexというルートを作りたいんです。
■route.rb
require 'subdomain/admin''
constraints Subdomain::Admin do
namespace :admin, path: Subdomain::Admin.path do
get 'index' => 'bar#index'
end
end
■lib/subdomain/admin.rb
module Subdomain
class Api
def self.matches?(request)
if Rails.env.production?
request.subdomain == "api"
else
request.subdomain.blank?
end
end
def self.path
"api" unless Rails.env.production?
end
end
end
この状態でRails_Env=developmentとRails_Env=productionつけてrake routesすると期待通りの結果になるのですが、
いざhttp://localhost:3000/api/indexにアクセスしたら「uninitialized constant Api」と出てきます…。
bar_controllerにApi::つけたり、app/controller/apiに配置したりしても駄目でした。
どうすればいいのでしょうか?
0635nobodyさん
2014/07/07(月) 22:35:18.31ID:???Rails は勝手に admin.rb を読んだりはしない
読むようにさせるには
・auto_load の仕組みが働くように規約に沿ったファイル名で規約に沿った位置に置く
・config/application.rb などで require で読む
のどちらか
0637nobodyさん
2014/07/08(火) 12:00:32.32ID:???0638nobodyさん
2014/07/08(火) 13:08:22.16ID:???0639nobodyさん
2014/07/08(火) 20:31:54.04ID:???http://www.ustream.tv/recorded/25419544
Enumerable#entries
http://ruby-doc.org/core-1.9.3/Enumerable.html
0640nobodyさん
2014/07/09(水) 00:42:40.56ID:HDQ993Cd部分テンプレートで複数のラベル群を作ると一意性がなくなって、混線しちゃいます。
label forで1,2,3,4とあって、input valueで1,2,3,4とあるとき、1setだったら良いのですが、
1,2,3,4のセットが複数出来る時、各自の中で動いてくれません。
各セットのlabel for やinput valueの1,2,3,4にたとえば投稿のIDなどをくっつけて、987-1,987-2などのようにしたいのですが、
その生成の仕方を知りません。ヘルパーメソッドとかではなく、自然体の書き方としてそういったやり方が用意されているなら知りたいです。
宜しくお願いします
0642nobodyさん
2014/07/09(水) 01:53:25.24ID:???天安門広場
文化大革命
0643nobodyさん
2014/07/09(水) 02:13:20.30ID:HDQ993Cdいやいや、私も道半ばの人間でして、ここで質問させてもらってるのです
でもついでにお役にたてるなら幸いですが
0644nobodyさん
2014/07/13(日) 20:52:54.97ID:???0645nobodyさん
2014/07/14(月) 09:03:57.62ID:???Rails3.2.18
text = "abcdefg"
text = text.html_safe
text = text.gsub(/cd(.+)/){
$1
}
puts text #=> ab
.html_safeした後にgsubすると$1の中身が空になるscanだとちゃんととれた
html_safeの順番を後に回すときちんと動く
text = "abcdefg"
text = text.gsub(/cd(.+)/){
$1
}
text = text.html_safe
puts text #=> abefg
0646nobodyさん
2014/07/14(月) 23:08:44.29ID:NZMg5fD+https://github.com/rails/rails/issues/1555 に出てた。
AS::SafeBufferはStringのサブクラスなので、ほとんどのメソッドは
Stringのそれと同様に動く。
一部の、文字列を加工して返すメソッド(gsubを含む)は、
#to_str で得られた文字列に実操作を委譲するようになっている。
(これにより、unsafeなStringが返る)
加工した結果がタグを含んでしまう可能性があるからだろうね。
で、 $1 はローカル変数なので、SafeBuffer#gsubのブロックと
移譲先のString#gsub内のそれは別物になってしまう。
バグというか、不便だけど言語上の制約と割り切るしかなさそう。
0647nobodyさん
2014/07/14(月) 23:36:06.76ID:???わざわざありがとうございます
言ってることはちっともわかりませんが直ることは無さそうということで諦めて違う方法考えます!
0648nobodyさん
2014/07/15(火) 03:57:15.59ID:lCP2M1NV0650nobodyさん
2014/07/15(火) 19:48:09.35ID:lCP2M1NV明らかに作ったことなさそうだね
君みたいなレべルの人間は黙ってていいよ
0651nobodyさん
2014/07/15(火) 20:05:39.19ID:???0652nobodyさん
2014/07/15(火) 20:08:38.56ID:lCP2M1NV君が教えれるレベルとも思わないし、私が君に教わるレベルでもないと思うよw
開発したことある人なら参考になるサイトを見ている可能性があるから、聞いてみたまでで、君のように開発したこともなく英語も読めなさそうな人には当てはまらない質問なんだけどね〜
まぁ頑張って生活してちょw
0654nobodyさん
2014/07/15(火) 21:53:43.32ID:???0656nobodyさん
2014/07/15(火) 22:24:25.17ID:???もっと貼ってくれ
0657nobodyさん
2014/07/15(火) 23:11:04.07ID:???0658nobodyさん
2014/07/16(水) 09:29:52.66ID:???0659nobodyさん
2014/07/16(水) 17:10:18.04ID:???1.記事にタグがつけられる
2.登録者はタグと他のユーザーをフォローして更新を追える
仕組みになってるみたいなんだけど
タグとフォロしてるユーザーその両方のItemを一気にとってくるのってどうやってんだろう
Kaminariつかってるとして
タグはacts_as_taggableで実装してるとして
Itemsってのが記事だとして
FollowモデルとFollowTagモデルがあるとして
■Follow follow_id follower_id
■FollowTag user_id tag_name
ちょっと思いついたのが
tags = current_user.follow_tags.pluck(:tag_name)
tag_items = Items.tagged_with(tags, any: true).pluck(:id)
follows = current_user.follows.pluck(:id)
follow_items = Items.where(user_id: follows).pluck(:id)
@item_list = Items.where(id: tag_items + follow_items).page(params[:page]).per(20)
こんな感じなんだけどさすがに煩雑すぎるしもっとスマートな方法があると思うんだが何かいいやりかたしりません?
0661nobodyさん
2014/07/18(金) 00:43:16.93ID:Un2cZdb7少しでもレベルの高い質問すると答えられなくなる
あえて英語で外人同様にぐぐれば転がってる情報なのに、そこにあたれないんだろうね
日本のサイトにはあまりないことを質問してやると、お前等のザコっぷりがよくあらわれるよw
0662nobodyさん
2014/07/18(金) 13:11:41.37ID:???0663nobodyさん
2014/07/18(金) 20:44:24.06ID:zd6Ingqcだから日本のサイトは糞ばっかなんだよ
0664nobodyさん
2014/07/18(金) 20:56:41.19ID:???0665nobodyさん
2014/07/18(金) 23:00:53.09ID:???0666nobodyさん
2014/07/19(土) 08:53:50.37ID:???俺ならその問題の場合はtwitterと同じように宅配形式でやるかな
でもそこまですんのもって感じではあるんだよね
0667nobodyさん
2014/07/19(土) 09:10:40.33ID:???kwsk
0668nobodyさん
2014/07/19(土) 09:41:31.08ID:???0669nobodyさん
2014/07/19(土) 14:06:46.96ID:???じゃあこのスレの存在異義ってなんなんですか?
part18まで行ってるのにこのザマなのってどういうことですか?
0670nobodyさん
2014/07/19(土) 18:13:40.68ID:???今外だから要点だけ話すけど
タイムラインの表示をmysqlで普通にやるなら
1.フォロー一覧を取得
2.フォローのつぶやきを取得
になるんだけど、これは人数が増えてくるとすごく時間がかかるようになるしつぶやきが加速度的に増えてるからそのうち数msでは返せなくなる
それに対応するためにtwitterがとった方針がメールのように各自につぶやきを宅配するシステム
例えば俺が呟くと、俺をフォローしてるユーザー全員のTLに俺のつぶやきをpushする
これは高速なKVSに対してつぶやくたびに以下のキーをつっこんでるってこと
current_user.follows.pluck(:id).each do |id|
tweet id:1234
user_id: id
end
TL表示側はこの仕組みで自分のユーザーidを問い合わせるだけでつぶやきの一覧が取れる
0671nobodyさん
2014/07/19(土) 21:45:46.51ID:???終始こんな感じだろw
俺がたまにここテストしてやる時のパターンはワンパターン
英語で検索すれば沢山出てくるが、日本語のサイトにはあまりない情報、
かつそこそこハードな取り組みについて質問してやる。
そしたら、だいたい、こんな感じで返ってくる。
おそらく予約システムなんて作ったことない、かつ、低レベルなワーカーなんだろうな。
俺はもう作成済みなんだが、こういう質問してやった時の、ここの住人の低レベルさw
こんなやつらが日本のサイト等作ってると考えたら、そりゃだめだわな。
下記のような糞みたいな返答するなら、私も分かりません教えてください、とでも謙虚にやればいいものを。
臭すぎんだよ
648 :nobodyさん:2014/07/15(火) 03:57:15.59 ID:lCP2M1NV
予約システムを作っていますが、日本語・英語で参考になるサイトを知っている方はいますか?
649 :nobodyさん:2014/07/15(火) 07:09:21.95 ID:???>>648
もうちょっとスレに沿ったレベルまで噛み砕いてからおいで
0672nobodyさん
2014/07/19(土) 21:53:15.04ID:???0673nobodyさん
2014/07/19(土) 22:49:12.71ID:???勘違いしているようだけど、教えてもらう気なんて全くないし、必要ないからなw
分からないことがあれば英語でググればたいていあるし、ここで質問している奴や、答えられていないお前等は失笑もの
ほなさいなら
0675659
2014/07/20(日) 10:16:44.08ID:???ありがとうございます
メールボックスみたいな感じですね、ただおっしゃってる通りちょっと大げさって感じはします
速度はそこまで求めないのでシンプルな方法があるといいのですが
>>671
質問がまったくRailsと関係ないのでRailsでどうするのか噛み砕いてから質問してくれってごく当たり前の反応だと思うんですけど
どうぞ英語サイトで好きなだけ検索してください
0676nobodyさん
2014/07/20(日) 14:15:17.33ID:???railsで作ったことあるレベルの人間からしたら、railsで作成するコツ・苦労するポイント等頭に入っているわけだが
もうこのスレいらないだろ。虫けらしか来てないんだからさ。
以下埋めとけよ
0677nobodyさん
2014/07/20(日) 14:16:44.86ID:???4つくらいのテーブルを繋いでいて
最終的に一番最後に繋がるテーブルのカラムでDESCソートをかけると
異様に時間がかかります
(結果が表示されるまで30秒ほど)
その最後のテーブルには1万レコードほどあります。
DESCソートを無くすと結果が2秒で返ってきます
しかし、その最後のテーブルのカラムでDESCソートはかけたいです
これを早くするための方法が分かる方はいませんか?
0678nobodyさん
2014/07/20(日) 14:24:11.49ID:???4つくらいのテーブルを繋いでいて
最終的に一番最後に繋がるテーブルのカラムでDESCソートをかけると
異様に時間がかかります
(結果が表示されるまで30秒ほど)
その最後のテーブルには1万レコードほどあります。
DESCソートを無くすと結果が2秒で返ってきます
しかし、その最後のテーブルのカラムでDESCソートはかけたいです
これを早くするための方法が分かる方はいませんか?
0679>>677 ◆cAsGJn91Iw
2014/07/20(日) 14:27:09.03ID:???あなたはいったい何がやりたいの?
スレを荒らしたいだけ?
なりすましされるので
一応トリップつけて
ID表示しときます
0680nobodyさん
2014/07/20(日) 14:38:53.09ID:???4つくらいのテーブルを繋いでいて
最終的に一番最後に繋がるテーブルのカラムでDESCソートをかけると
異様に時間がかかります
(結果が表示されるまで30秒ほど)
その最後のテーブルには1万レコードほどあります。
DESCソートを無くすと結果が2秒で返ってきます
しかし、その最後のテーブルのカラムでDESCソートはかけたいです
これを早くするための方法が分かる方はいませんか?
0681nobodyさん
2014/07/20(日) 14:41:05.27ID:???いや、こんな低レベルの糞スレ、あるだけ無駄
というか有害だから埋めて消し去れと言っているんだよ
低レベルの質問と、低レベルの質問にしか答えられない低級ワーカーばかりのスレなんていらないんだよ
このスレがなければ、虫けらどももここで答えを引っ張り出そうとするんじゃなく英語勉強しぐぐりまくる方に向かう
健全だろ
だから消しとけよこの糞すれ
0682nobodyさん
2014/07/20(日) 15:00:00.49ID:???いや、こんな低レベルの糞スレ、あるだけ無駄
というか有害だから埋めて消し去れと言っているんだよ
低レベルの質問と、低レベルの質問にしか答えられない低級ワーカーばかりのスレなんていらないんだよ
このスレがなければ、虫けらどももここで答えを引っ張り出そうとするんじゃなく英語勉強しぐぐりまくる方に向かう
健全だろ
だから消しとけよこの糞すれ
0683nobodyさん
2014/07/20(日) 15:00:37.24ID:???1万ぐらいならRubyにソートさせても大したことないから、DESCなしで持ってきてから
ソートすりゃいいんじゃね?
0684nobodyさん
2014/07/20(日) 15:21:50.05ID:???ジムの中には日をまたいで営業しているもののもあり、この終了時間を02:00としたいと思います
ここには日付の概念は全くもって入れる気はありません
ところが調べていくと、RoR+MySQLでは時間だけを保存する機能が欠如しているのではないかという壁に当たります
seconds_from_midnightでは終了時間が日をまたぐものでは使えない恐れもありますし、時間だけを保存したいというニーズがあったとします
どういう解決策が思い当たるでしょうか?
0685nobodyさん
2014/07/20(日) 15:26:42.50ID:???> seconds_from_midnightでは終了時間が日をまたぐものでは使えない恐れもあります
2:00 を 26:00 と考えれば解決
0686nobodyさん
2014/07/20(日) 15:37:47.77ID:???seconds_since_midnightは0:00からの秒数ですよね
私は現在空いているジムの検索にもこのデータを使いたいのですが、これじゃ全く使えませんよね?
0688684
2014/07/20(日) 15:52:47.86ID:???Gym.whereで
start_time < time.now and end_time > time.now
こういったことをやりたいわけですが...
0690nobodyさん
2014/07/20(日) 15:58:22.59ID:???time.now が時刻だけを取れるとして、その時刻が○時より前なら24時間足すとかいう処理を
してあげればいい
0691684
2014/07/20(日) 16:00:27.82ID:???ですね
time.now.seconds_since_midnightとして、
starttimeもendtimeもintegerで秒数管理にした方が良いでしょうか?
starttime2:00であれば、60*60*2=7200という数字で保管
開業時間と閉業時間を扱う機会は多いと思いますが、RoR+mySQLではスマートな方法が最初から用意されていないような気がしますが、皆さんどうしているのでしょうか
0692684
2014/07/20(日) 16:05:15.86ID:???ただ、確認したかったのは、これだけ使用機会が多い開業時間終業時間を扱う問題で、最もスマートに近い部類の方法がこれかと
他によりベターでシンプルでスマートで元から用意されている道筋的なもので、見落としているものがないのかgeekな皆様に確認したかったのです
0693nobodyさん
2014/07/20(日) 16:07:03.78ID:???日をまたぐ処理については、日の切れ目をたとえば午前4時とかにして、24時以降の時刻も扱うというのが
一般的だろうね
0694684
2014/07/20(日) 16:11:39.98ID:???ジムの中には、終了時刻が6:00のものもあれば、12:00のものもあれば18:00,21:00のものもあるという前提でお考えください
0696684
2014/07/20(日) 16:29:51.85ID:???なるほど
毎日23:00~30:00のジムがあったとして、ジムユーザーが5:00に現在空いているジムを検索したとします
5:00、29:00(time.nowの一日前の曜日で)、二つで検索しないといけないということですか?
最長47:59までにしておくとして、time.nowを使った検索は、常にその真正なる時間5:00と24:00足した29:00で二つ検索しないとあかんちゅうことでしょうか?
0697684
2014/07/20(日) 16:36:14.35ID:???月曜日23:00~3:00、火曜日22:00~4:00のジムは、
月曜日23:00~23:59、
火曜日0:00~3:00、
火曜22:00~23:59、
水曜0:00~4:00
といった具合に。
これなら問題を容易に解決できますが、入力するユーザー(ボランティア)にかかる負荷が大きすぎる気もします
0699nobodyさん
2014/07/20(日) 16:40:45.88ID:???入力が23:00〜3:00なら23:00〜23:59、00:00〜03:00に分割する、なんて処理は別に大した手間じゃないと思うが
なぜ人間に分割後のを入力させようとするんだ?
0701nobodyさん
2014/07/20(日) 16:45:57.54ID:qyCtqucU返信ありがとうございます。
ソートなしの↓これだと2秒で表示されます
@communities = current_user.get_up_voted(Community)
@codes = Code.includes(:user).where(:community_id => @communities.collect(&:id)).order('created_at DESC').page(params[:page]).per(10)
しかし、ソートをいれた、これだと40秒以上かかります
@communities = current_user.get_up_voted(Community)
@codes = Code.includes(:user).where(:community_id => @communities.collect(&:id)).order("users.active_at DESC").page(params[:page])
これをRuby側でソートするとはどのような記述になりますか?
0702684
2014/07/20(日) 16:46:02.98ID:???>>699
アンカー間違えました
ちょっとそのあたりを実装したことがなかったので。内部的に加工してから保存。
結構G先生に聞けば教えてくれるような代物なんですかね?
0706nobodyさん
2014/07/20(日) 20:41:50.36ID:???0708nobodyさん
2014/07/20(日) 21:51:02.99ID:???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
0709nobodyさん
2014/07/20(日) 23:05:06.23ID:qyCtqucUdef self.up
add_index :users, :active_at
end
で貼りましたけど
相変わらず遅すぎますね。
どこにボトルネックがあるのでしょうか
0711659
2014/07/20(日) 23:16:25.32ID:???Index使われてるかexplainでちゃんとみた?
まずこれの速度は実用に堪えるの?
これが数msで帰ってくるならボトルネックはactive_atではないってことになるよね?
@codes = Code.includes(:user).order("users.active_at DESC").page(params[:page])
まあ間違いなくここだろうけど、indexある状態とない状態で速度比較してみるといいよ
0712nobodyさん
2014/07/20(日) 23:31:37.31ID:qyCtqucUそのコードでもやはり表示されるのに数十秒かかりますね。
def self.up
add_index :users, :active_at
end
して
bundle exec rake db:migrate RAILS_ENV=production
まで実行したのに、これだけではindexは適用されていないということでしょうか?
0714nobodyさん
2014/07/20(日) 23:40:41.29ID:???そのSQL を二段階に分けるといい
ってリンクを貼るのをやめてくれ
前にSQLスレに流したときもこれが原因でRailsっはゴミて叩かれてた
0715nobodyさん
2014/07/20(日) 23:49:19.73ID:qyCtqucUdevelopmentではなく本番環境(とはいっても公開していませんが)でやってます。
ちなみに
communityのmodelに has_many :codes, belongs_to :user
codeのmodelに belongs_to :community, belongs_to :user
userのmodelに has_many :codes, has_many :communities
をアソシエーションにしています。
スコープ使って↓を実行すると即座にactive_atでソートがかかって表示されます(ただしcommunityは1つに限定されています)
@codes = @community.codes.recent.page(params[:page])
codeスコープ→ scope :recent, lambda { |n = 10| includes(:user).where('users.deleted_at' => nil).order("users.active_at DESC").limit(n) }
なので
@communities = current_user.get_up_voted(Community)
@codes = @communities.codes.recent.page(params[:page]) でいけるかな?と思ったら
案の定 undefined method `codes' のエラーになり四苦八苦してるところです
複数レコード→複数レコードで繋いで取り出すには
has_many through を使わないと、この問題は解決できないのでしょうか?
0716nobodyさん
2014/07/20(日) 23:52:56.59ID:???0718nobodyさん
2014/07/21(月) 01:02:06.23ID:???0719nobodyさん
2014/07/21(月) 01:10:38.34ID:???n to nリレーションでは間にリレーションテーブルを作るのがrdbmsの定石。
ActiveRecordだとhmt。
0720nobodyさん
2014/07/21(月) 01:43:44.00ID:B7gBtag6ありがとうございます。
codesは電話番号なんですが、
user has_many :codes になります
codeはuserに直接属して且つcommunityにも直接属しているのですが
communities.codes を実現させるには
こんな場合でもcommunityとcodesの間に中間テーブルが必須ですか?
0721nobodyさん
2014/07/21(月) 01:54:32.49ID:???user:code = 1:n
community:code = 1:n
ってこと?
それならいらない。
なんだかよくわからんが、ERDくらいは書けた方がいいと思う。
0722nobodyさん
2014/07/21(月) 02:01:33.12ID:B7gBtag6そういうことです
その関連アソシエーションですが
これを実行すると
40秒以上かかります
@communities = current_user.get_up_voted(Community)
@codes = Code.includes(:user).where(:community_id => @communities.collect(&:id)).order("users.active_at DESC").page(params[:page])
ちなみにusers.active_atにはindexが貼ってあります
0723nobodyさん
2014/07/21(月) 03:00:37.45ID:???0724nobodyさん
2014/07/21(月) 03:18:08.00ID:???http://nippondanji.blogspot.jp/2009/05/alter-table.html
0725nobodyさん
2014/07/21(月) 04:55:40.36ID:???馬鹿の自演か
0726nobodyさん
2014/07/21(月) 07:40:13.46ID:???TEXT や BLOB をもつテーブルではもっと悪くて、一時テーブルはディスク上に作られる
これには tmp_table_size や max_heap_table_size の設定は関係ない
そういう場合は、SQL を二段階に分けるといい
http://www.metareal.org/2007/07/24/notes-on-rubyonrails-with-mysql/
http://mysqldump.azundris.com/archives/72-Rubyisms.html
0727nobodyさん
2014/07/21(月) 11:36:17.22ID:???途中からだったら
以前のレコードにはindexは貼られず無意味だったんですねorz
色々と調べてみて分かりました
途中からindex追加する場合でも全レコードに適用できるものばかりと思っていました。。。。
0729nobodyさん
2014/07/21(月) 12:58:25.44ID:???0730nobodyさん
2014/07/21(月) 13:04:39.88ID:???0731nobodyさん
2014/07/21(月) 13:56:33.63ID:???おおよそ日本のものを生成したいのですが、下記のように頑張って少数一位までランダムにしたいと思ったのですが、うまくいきません
どういった方法でやればいいのでしょうか?厳密にはrubyということになりますが、宜しくお願いします
latitude = Random.rand(200..500).quo(10)
longitude = Random.rand(1200..1550).quo(10)
0732nobodyさん
2014/07/21(月) 17:13:20.23ID:B7gBtag6ありがとうございます。
こんなかんじです
+----+-------------+-------------+--------+---------------+---------+---------+---------------------------------------+------+----------------------------------------------+\n
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |\n
+----+-------------+-------------+--------+---------------+---------+---------+---------------------------------------+------+----------------------------------------------+\n
| 1 | SIMPLE | codes | ALL | NULL | NULL | NULL | NULL | 9095 | Using where; Using temporary; Using filesort |\n
| 1 | SIMPLE | users | eq_ref | PRIMARY | PRIMARY | 4 | test_production.codes.user_id | 1 | |\n
+----+-------------+-------------+--------+---------------+---------+---------+---------------------------------------+------+----------------------------------------------+\n
2 rows in set (0.00 sec)\n"
0733nobodyさん
2014/07/21(月) 17:14:18.84ID:B7gBtag6@codes = Code.includes(:user).where(:community_id => @communities.collect(&:id)).order("users.active_at DESC").explain
をconsoleで実施しました
0734nobodyさん
2014/07/21(月) 17:15:17.26ID:B7gBtag6@communities = User(1).get_up_voted(Community) ←current_userではなくUser(1)
@codes = Code.includes(:user).where(:community_id => @communities.collect(&:id)).order("users.active_at DESC").explain
をconsoleで実施しました
0735nobodyさん
2014/07/21(月) 17:33:01.50ID:???0738nobodyさん
2014/07/21(月) 18:20:09.52ID:???入れ子でremote=trueのformって入れられるの?
会員登録の際のアカウント重複の確認とかどうやってるのでしょうか?
0740nobodyさん
2014/07/21(月) 18:37:21.63ID:???えっ?add_indexを実施しても無意味だということですか?
上でindex付けてみるといいと助言をいただいたので試してみました
0742nobodyさん
2014/07/21(月) 22:31:13.01ID:???>>736
136.2とか132.6とかが発生せずに、132.0とか133.0とか少数第一位が0のものしか生まれません。
0743nobodyさん
2014/07/21(月) 23:00:22.18ID:???2014-07-21 3:23:00 UTC
のように登録されますが、
これをepoch(1970-01-01 00:00)を基準に、1970-01-01 3:23:00と登録させたりできないでしょうか?
0744743
2014/07/21(月) 23:26:03.35ID:???epochまわりに配置してもいろいろ大変そうなので、
任意のもの、2010-10-10 3:23と登録させるような方法はありますでしょうか?
0745nobodyさん
2014/07/22(火) 01:24:30.99ID:???1.attr_accesor かなんかで、buf_dateとかを作る
2.before_save :set_dateとかで保存時にbuf_dateを読む
3.その中でself.date = Date.new(2011-12-#{self.buf_date})とかやる
0751nobodyさん
2014/07/22(火) 23:09:05.35ID:???こういう変な規則の時バリデーションってどうやればいいのでしょうか?
0752nobodyさん
2014/07/22(火) 23:40:19.50ID:???条件付きvalidation使ってるね
サクッとやれるのは条件付きvalidationかも
4つ必要になる。
attr :xxx
validate :xxx, presence: true, unless: valid_input_cols?, message: 'col1,2,3はいずれか1つだけ入力が必要です'
validate :col1, numericality: true, if: (self.col1.preset? and valid_input_cols?)
validate :col2, numericality: true, if: (self.col2.preset? and valid_input_cols?)
validate :col3, numericality: true, if: (self.col3.preset? and valid_input_cols?)
def valid_input_cols?
count = 0
count = count + 1 if self.col1.preset?
count = count + 1 if self.col2.preset?
count = count + 1 if self.col3.preset?
count == 1 ? true : false
end
xxxはvalidationの便宜のために作った適当な仮想属性。col1とか使っても別にいいっちゃいい。
コードは適当なのでそのままでは動かんかも
あんまスマートなやり方でないので、他の人のやり方を知りたい
0754nobodyさん
2014/07/23(水) 00:07:07.25ID:???模索中ということなので、英語(validate presence one of)でググってこれはというものの、リンクを貼っておきます。ありがとうございました。
0755nobodyさん
2014/07/23(水) 00:08:26.78ID:???0757nobodyさん
2014/07/23(水) 13:45:42.51ID:???まず、生でSQL実行できる環境作って同じSQLで比較して
CREATE INDEXしたり EXPLAINしたりANALYZEかけたりしてみなよ
0758nobodyさん
2014/07/24(木) 00:06:49.37ID:I3rzKL5b@codes = Code.includes(:user).where('community_id IN (?)', @communities).order('users.active_at DESC').page(params[:page]).per(10)
のようにActive RecordでSQLを出力すると、ページが表示されるまでに40秒ほどかかります。
.order('users.active_at DESC’)を抜いて記述すると3秒で表示されるようになります。
@codes = Code.includes(:user).where('community_id IN (?)', @communities)
のようにして一旦全てを取り出して
これをRuby側で'users.active_at DESC’の要素で並び替えを行い.page(params[:page]).per(10)まで適用させるにはどのように記述すればいいでしょうか?
0759nobodyさん
2014/07/24(木) 00:16:38.22ID:I3rzKL5b心当たりとしては外国の誰からか
http://hoge-hoge-mysite.jp/hoge_action?WAC_SESSION=955037240569551118593488801844020631970859589704918509137566
ように意味不明なパラメーターを付けてアクセスされたことかなと見ています(アクセス解析ソフトにて判明)
WACやWAC_SESSIONとはなんなんでしょうか?
ActionController::RoutingError (No route matches [GET] "/WAC_CONTROL/WAC_MESSAGES/WAC_MSG_OVERVIEW"):
actionpack (3.2.11) lib/action_dispatch/middleware/debug_exceptions.rb:21:in `call'
actionpack (3.2.11) lib/action_dispatch/middleware/show_exceptions.rb:56:in `call'
railties (3.2.11) lib/rails/rack/logger.rb:32:in `call_app'
railties (3.2.11) lib/rails/rack/logger.rb:16:in `block in call'
activesupport (3.2.11) lib/active_support/tagged_logging.rb:22:in `tagged'
railties (3.2.11) lib/rails/rack/logger.rb:16:in `call'
actionpack (3.2.11) lib/action_dispatch/middleware/request_id.rb:22:in `call'
rack (1.4.5) lib/rack/methodoverride.rb:21:in `call'
0760>>759の続き
2014/07/24(木) 00:17:03.95ID:I3rzKL5bactivesupport (3.2.11) lib/active_support/cache/strategy/local_cache.rb:72:in `call'
rack (1.4.5) lib/rack/lock.rb:15:in `call'
actionpack (3.2.11) lib/action_dispatch/middleware/static.rb:62:in `call'
rack-cache (1.2) lib/rack/cache/context.rb:136:in `forward'
rack-cache (1.2) lib/rack/cache/context.rb:245:in `fetch'
rack-cache (1.2) lib/rack/cache/context.rb:185:in `lookup'
rack-cache (1.2) lib/rack/cache/context.rb:66:in `call!'
rack-cache (1.2) lib/rack/cache/context.rb:51:in `call'
rack-mini-profiler (0.1.23) Ruby/lib/mini_profiler/profiler.rb:209:in `call'
railties (3.2.11) lib/rails/engine.rb:479:in `call'
railties (3.2.11) lib/rails/application.rb:223:in `call'
railties (3.2.11) lib/rails/railtie/configurable.rb:30:in `method_missing'
unicorn (4.6.3) lib/unicorn/http_server.rb:552:in `process_client'
unicorn (4.6.3) lib/unicorn/http_server.rb:632:in `worker_loop'
unicorn (4.6.3) lib/unicorn/http_server.rb:500:in `spawn_missing_workers'
unicorn (4.6.3) lib/unicorn/http_server.rb:142:in `start'
unicorn (4.6.3) bin/unicorn_rails:209:in `<top (required)>'
/usr/local/bin/unicorn_rails:23:in `load'
/usr/local/bin/unicorn_rails:23:in `<main>'
0761nobodyさん
2014/07/24(木) 02:03:42.16ID:???他の人が回答してるけど、usersテーブルのactive_atにindex貼ればいいと思う。
index貼れば既存のレコードにも適応される。
@codes = Code.includes(:user).where('community_id IN (?)', @communities)
だけ一旦とりだして云々〜というのはできるけど辞めた方がいい。
SQLでやるよりずっと遅くなる可能性のが高い。
とにかく以下の2点をちゃんと確認する必要がある。
1. ホントにusersテーブルにindexが貼られてるかどうか。
2. クエリが発行されるときに当indexが利用されているか。
1は、適当なDBクライアントから、index確認のクエリをたたく。
MySQLなら
show index from users;
PostgreSQLやOracleは知らん。調べて。
2は、
rails consoleで
@communities = current_user.get_up_voted(Community)
explain = Code.includes(:user).where('community_id IN (?)', @communities).order('users.active_at DESC').page(params[:page]).explain
p explain
って感じで確認する。perはページネーションのメソッドだろうから外す。
闇雲にやってる感があるけど、この際だからSQLやindex,explainのことをある程度学んだほうがいい。
0762nobodyさん
2014/07/24(木) 07:27:07.95ID:???お返事ありがとうございます
�@についてはindexは貼りました
phpMyAdminのusersテーブル→構造→インデックス
から
ちゃんとactive_atのインデックスが作られて表示されているのを確認しました
その後、�Aについては
実行すると>>732のような結果でした
0765nobodyさん
2014/07/24(木) 12:14:47.84ID:???add_indexをbundle exec db:migrate RAILS_ENV=production した後
explainした結果が>>732です
0766nobodyさん
2014/07/24(木) 15:57:58.54ID:RxL1HHelactive_atのindex使われてないねぇ
MySQLのindexは、1つのtableにつき1つのindexしか使ってくれないって制限がある。
で、usersの方は active_at じゃなくて PRIMARY、つまり id のindexが優先して使われてるね。
test_production.codes.user_idって情報があるから、joinの結合のためだろう。
idとactive_atの順番で複合index張れば上手くindexが使われる「かも」。
MySQLだとこんな感じ。
alter table users add index multiple_idx (id, active_at);
「かも」なのは自分もちょっと自信がない部分があるから。
join後のtemporary tableに対して、indexって効いたかな?って。
762が実験するか、誰か詳しい人おしえてほし。
あと、codesもALLになっちゃってるね。
order部を外したら3秒ですむ、という話だけど3秒もかかるのはこのせいだね。
codesターブルのcommunity_idにindex貼れば ここは 0.1秒以下になると思う。
0767nobodyさん
2014/07/24(木) 18:47:42.92ID:???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
0768nobodyさん
2014/07/24(木) 18:52:20.66ID:???http://gutch.hatenablog.com/entry/20120222/1329890161
0769nobodyさん
2014/07/24(木) 23:40:58.72ID:???community_idにindexを貼っても
やはり同じように重いですね
謎すぎます
解決方法が分かる人がいたら本当お願いします!
0771nobodyさん
2014/07/25(金) 00:35:05.24ID:???なんか重く感じます
unicornでprocess数は6にしています
さくらVPS SSD メモリ2GBに最適な
unicornとmysqlのmy.cfの設定法を教えてください
0772nobodyさん
2014/07/25(金) 00:48:52.93ID:???0773nobodyさん
2014/07/25(金) 05:06:17.56ID:???手元で書いて動くコードは1分でできるのに、
例外処理をして9割の完成度に上げるのには、とてつもなく時間がかかる場合がある
http://el.jibun.atmarkit.co.jp/rails/2011/09/web9-1e8b.html
スタートアップ企業で8年間Webの開発をしてみての反省点いろいろ - Masatomo Nakano Blog
6. サーバ周りの人材をしっかり確保しよう
http://b.hatena.ne.jp/entry/blog.madoro.org/mn/84
Ruby on Rails が簡単というのはウソ - #生存戦略 、それは - subtech
http://subtech.g.hatena.ne.jp/secondlife/20120309/1331279496
今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」 | つい全力ツッコミしてしまうエンジニアCEOのブログ | sumyapp
http://b.hatena.ne.jp/entry/blog.sumyapp.com/2013/07/no-recommend-rails/
自分でサーバ立てるのってなんか楽しそうだしスゴそうだよね?
サーバ立てるのなんてちょっとパソコンに詳しければ簡単にできるんでしょ?
ハードウェアの多重化なんて必要?
企業で使うとかじゃなく個人的に細々と立てたサーバが攻撃されることなんて滅多にないよね?
攻撃が来るって言ったって大した数じゃないんでしょ?
攻撃されたって大したことは起きないんでしょ?
http://b.hatena.ne.jp/entry/tmaeda.s45.xrea.com/20041101.html
0774nobodyさん
2014/07/25(金) 06:03:25.11ID:PIzM/Roo0775nobodyさん
2014/07/25(金) 07:25:11.19ID:???>サーバ立てるのなんてちょっとパソコンに詳しければ簡単にできるんでしょ?
マイクロソフトはOS会社なのに
そのノリでサーバー作ってるフシがあるから困るわ
0776nobodyさん
2014/07/25(金) 10:36:19.12ID:???それはその機能ですか
0779nobodyさん
2014/07/25(金) 19:40:03.54ID:jnnPzTtojavaであればServletやspringのシングルトンActionにインスタンス変数を持たせると
スレッドセーフでなくなり、無関係なユーザの情報が混ざってしまったりするので、
そのような実装をしないように注意したりしますが、
railsでもそのような注意点があれば教えてください。
0780nobodyさん
2014/07/25(金) 23:08:32.42ID:???0781nobodyさん
2014/07/26(土) 21:45:38.66ID:???0782nobodyさん
2014/07/27(日) 00:28:37.21ID:f1pmoydYRails 2.1 頃の情報だけど(最新は知らない)、
Railsは(Java Servlet等とは違って)シングルスレッドだよ
WebサーバからControlerが起動されると、
Viewがレンダリングを終えるまで呼び出したスレッドが占有する
いいかえると、一度に1つのHTTPリクエストしか処理しない
だからRailsプログラマはスレッド間の競合/排他などについて悩まない
実運用では、Webサーバの背後で複数のAPサーバ(Railsインスタンス)を
配置することで、HTTPリクエストを並行に処理させるのが一般的
0783nobodyさん
2014/07/27(日) 01:08:28.48ID:???今はマルチスレッドで動かすこともできるサーバもあるしね(Pumaとか)
もっとも、MatzRubyはGILがあるからあまり意味はないんだが
0784nobodyさん
2014/07/27(日) 08:11:28.09ID:???超高速取引でウォール街を席巻する『フラッシュ・ボーイズ』
http://www.huffingtonpost.jp/shumpei-kumon/flash-boys_b_5210449.html
0785nobodyさん
2014/07/28(月) 19:46:24.40ID:tREUFgeDPayment.statuses.keysとかでselectタグに出力すると
日本語でセレクトタグに表示がされないでいい選択肢が無いな、と悩んでいます
ActiveRecrod#enumに対してささやかにi18nをかぶせてくれるようなgemは存在しないのでしょうか?
0786nobodyさん
2014/07/28(月) 19:59:19.99ID:yO+mRs5E0787nobodyさん
2014/07/28(月) 20:20:30.08ID:???http://b.hatena.ne.jp/entry/postd.cc/why-go-is-not-good/
Farewell Node.js (翻訳) - from scratch
http://b.hatena.ne.jp/entry/yosuke-furukawa.hatenablog.com/entry/2014/07/06/094617
0788nobodyさん
2014/07/29(火) 08:44:20.35ID:???http://jocellyn.cz/2014/07/28/best-gems-for-beginners.html
0789nobodyさん
2014/07/29(火) 14:17:10.87ID:???プロセス数は何個で設定してますか?
CPU仮想2コア
メモリ2GB
SSD
なんですが6で設定しています
多すぎ?2にすべき?
0790nobodyさん
2014/07/29(火) 19:49:14.83ID:???0791nobodyさん
2014/07/29(火) 20:23:46.40ID:???http://b.hatena.ne.jp/entry/blog.mirakui.com/entry/2013/02/20/003401
0792nobodyさん
2014/07/29(火) 20:40:27.84ID:???3c3
< worker_processes 1
---
> worker_processes 17
https://github.com/mirakui/tuningsan
0794nobodyさん
2014/07/29(火) 21:23:21.58ID:???http://b.hatena.ne.jp/entry/s/speakerdeck.com/mirakui/quan-zi-dong-parametatiyuningusan
0795nobodyさん
2014/07/29(火) 21:28:00.59ID:???webサービスを立ち上げた頃に既に idにindexを貼っていました。
そして、その後、add_indexさえすればというバカの1つ覚えで
意味が無いとも知らず同じテーブルの他のカラム(ただしアソシエーションのキーになるもの)
にも貼っておりindexが6種類ほど貼られています。
この状態で
alter table users add index multiple_idx (id, active_at);
を試したところ
mysql> alter table users add index multiple_idx (id, active_at);
Query OK, 9630 rows affected (0.84 sec)
Records: 9630 Duplicates: 0 Warnings: 0
と出ました。その後、indexが効いたか試しても、やはり>>701のように40秒以上かかります
どうしたらいいものでしょうか。。。どなたか分かる方いませんか?
0796nobodyさん
2014/07/31(木) 00:22:53.92ID:RKyjBma/開発環境と本番環境はdb/seeds.rbで作ってますが、テスト環境だとテストのたびに毎回リセットされちゃいます。
そしてこのseedsを入れ込むのに1分以上かかります。
テストのDBの特定のテーブルのデータだけリセットせずにずっと残しておくことは出来ないでしょうか。
0797nobodyさん
2014/07/31(木) 12:06:57.77ID:???dbのやりとりで重くなるとかじゃなくて
レンダリングだけでもクソ重い気がするbootstrapを使ってるせいかな?
0798nobodyさん
2014/07/31(木) 12:13:22.09ID:???CakePHPのほうが圧倒的に速いという
驚愕の事実
0799nobodyさん
2014/07/31(木) 12:29:50.73ID:???0800nobodyさん
2014/07/31(木) 12:47:13.91ID:???違うフレームワークじゃないのか
0801nobodyさん
2014/07/31(木) 14:21:00.11ID:???cakephpは毎回全ファイル読み込むからrailsと同じシステム作ったらrailsより早くなりようがないんだが
0802nobodyさん
2014/07/31(木) 14:36:15.65ID:???それならCakePHPのが早いケースも普通にあるだろうな(3倍くらい早くなる)。
Railsはproduction modeだと、ファイルのメモリキャッシュやるけどプリコンパイルまでしてるわけじゃないからな。
CakePHP + APC >> Rails production > CakePHP > Rails development みたいな感じだと思う。
Rubyはプリコンパイル難しい言語だからな。RubyVM開発者たちの更なる頑張りに期待するしかない。
YARVはRailsではあんま恩恵なかったね;;
0803nobodyさん
2014/07/31(木) 14:57:00.14ID:???例えば、「is_lock」をtrueにしたらそれ以降はupdated_atは更新されないってかんじです
既に動いてしまっているサービスなので別にもう1カラム追加するっての以外で方法があれば教えて下さいお願いします
0804nobodyさん
2014/07/31(木) 18:45:49.26ID:???0805nobodyさん
2014/07/31(木) 18:48:08.87ID:???http://gihyo.jp/dev/column/01/prog/2010/030801?page=2
RailsとCakePHPを比べたところ,高負荷時にはRails のほうが大幅に応答性能が高いという結果が出たことですね。
これは200リクエスト/秒くらいからPHPの応答性能が急激に下がるのが原因です。
Rubyはそれほど大きくはパフォーマンスが落ちないんです。
第4回 Railsに変えてよかった!:iKnow!の場合 | Think IT
http://thinkit.co.jp/article/156/4?page=0,1
3ヶ月、わずか3名程度のエンジニアチームで、彼らはPHPで実装が完了していたレベルに追いつきました。
またコード量はPHPの1/5以下にまで削減されており、よりシンプルな構成も実現できました。
食べログの画面数は約200あるが,開発に取りかかって約2カ月で完成した。
「VBscriptならこの倍,PHPでも1.5倍はかかっていたのではないか」
コード量も10分の1になった。
http://itpro.nikkeibp.co.jp/article/OPINION/20071031/286028/
0806nobodyさん
2014/07/31(木) 19:17:38.94ID:+eUxrmGz長引いてるね。興味あるんでちょっと実験してみた
コンソールであなたが提示してるのとほぼ同意の、以下のコード動くような環境を作った
page = 1
@communities = Community.get_up_voted(Community)
@codes = Code.includes(:user).where('community_id IN (?)', @communities).order('users.active_at DESC').page(page).per(10)
レコード数はそれぞれ
users: 1000
communities: 1000
codes: 100000
Community.get_up_votedは、適当なCommunityを100件戻すようにした。
が、0.1秒以下で結果が戻ってくる。流石に件数が少なすぎるのかもしれん。
それぞれの大体のレコード数 教えてくれ。
あと、Community.get_up_voted では大体何レコード位戻ってくる?
0807nobodyさん
2014/07/31(木) 20:38:11.55ID:???ありがとうございます
レコード件数は以下の通りです
Users 10000件
Communities 100件
Codes 10000件
Votes 100000件
0808nobodyさん
2014/07/31(木) 21:17:29.48ID:???@communities = current_user.get_up_voted(Community)
です
@communities = Community.get_up_voted(Community)
ではありません
0809nobodyさん
2014/07/31(木) 21:52:53.44ID:???current_user.get_up_votedの部分は要はいくつかのCommunityを戻すことが目的のメソッドよね?
で、ここはボトルネックにはなってない(ハズ)なので、適当に書いた。
特殊な処理してない限りは違いは現れないはず。
users 10000, codes 10000 でやっても 0.1秒以下で終わる。
explainの結果も、あなたが>>732で提示したのと全く同じ状態。
疑問を狭めるため、いくつか質問。
1. @communities の中身って CommunityのArray?それともActiveRelationオブジェクト?
2. sql = Code.includes(:user).where('community_id IN (?)', @communities).order('users.active_at DESC').page(page).per(10).to_sql
をやって、sqlの内容を教えて欲しい。
0810nobodyさん
2014/07/31(木) 22:47:39.55ID:O8Sk0a9qrandom.new.rand.quo
で解決しないか?詳しくないのでテキトーだが
0811nobodyさん
2014/08/01(金) 00:36:36.64ID:???マクロ化できないのでしょうか?
bundle exec rake assets:clean Rails_Env=production
bundle exec rake assets:precompile Rails_Env=production
0813nobodyさん
2014/08/01(金) 01:10:12.28ID:???0814nobodyさん
2014/08/01(金) 21:16:44.69ID:???ありがとうございます。回答いたします。
1. おそらくActiveRelationのオブジェクトだと思われます。
ActsAsVotableというgemの関数を使っています(https://github.com/ryanto/acts_as_votable)
2.
SELECT `codes`.* FROM `codes` WHERE (`codes`.`deleted_at` IS NULL) AND (community_id IN (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,25,28,29,30,66,67,71,87,90)) ORDER BY users.active_at DESC LIMIT 10 OFFSET 0
0815nobodyさん
2014/08/01(金) 21:24:43.06ID:???ハードウェアの機種や型番、ソフトウェアの名前、バージョンを書く。
正確なエラーメッセージ、エラー番号を書く。
投稿する前に、誤字や文章の誤りがないか、説明が不足していないか、よくチェックする。
投稿後に間違いや説明不足に気が付いたら、訂正、追加説明をする。
わからない言葉があったら、質問する前にマニュアルや検索サイトで調べる。
回答をもらったら、他の人の参考になるように、結果を詳しく書く。
ネットの利用方法やマナーについてわからないことがあるときは、友人や家族などの身近な人にも必ず相談する。絶対に一人だけでやろうとしてはいけない。
http://www.geocities.jp/stardust774/
0816nobodyさん
2014/08/01(金) 21:39:28.87ID:???<% @codes.includes(user: :user_profile).each do |code| %>
<%= render 'codes/code', { :code => code, :icon_photo => code.community.community_icon } if code.community %>
<% end %>
Viewで↑となっていたものを↓にしたら即座に表示されるようになりました(それでも遅いですが・・・)
<% @codes.each do |code| %>
<%= render 'codes/code', {:code => code, :icon_photo => code.community.community_icon} %>
<% end %>
何が悪いのか分かりませんが、ありがとうございました。
0817nobodyさん
2014/08/01(金) 21:46:44.69ID:???ただし、この1ページを読み込むのに若干遅く感じます。
profileではこんなかんじです。
これってやっぱり遅いですよね?
http://i.imgur.com/Ee9OFB0.png
0818nobodyさん
2014/08/01(金) 22:26:26.47ID:???非会員にもゲストとして書き込めるようなロジックって組めますか?
Users
Comments
の各テーブルを作成していて
現在、Commentsにはuser_idがあります
User has_many :comments
ですがcommentを作成したら通常は自動的にcurrent_user.idが入りますよね。
ログインしていないゲストがcommentレコードのuser_idをnilにして書き込めるようにするには
アソシエーションも含めて、どのようにすればいいですか?
0819nobodyさん
2014/08/01(金) 22:36:22.87ID:XiYD0/qY0820nobodyさん
2014/08/01(金) 22:38:35.47ID:???ログインしていない状態では名無しさん専用userを設定するという方法
もある。いちいちnil判定しなくてよくなる(NullObjectパターン)。
http://kohada.2ch.net/test/read.cgi/php/1359587251/
0822nobodyさん
2014/08/02(土) 15:06:12.27ID:???ボトルネックになってるとこをちゃんと特定してから質問してくれよw
グッタリだよ orz
調査のやり方は教えたはずなので、
@codes.includes(user: :user_profile).each だとなんで重いのか、
そのページの表示に1115msかかるのはなぜかは自分でやってみてくれ。
0823nobodyさん
2014/08/02(土) 17:30:52.08ID:???掲示板やメーリングリストを、パソコンオタクが集まる無料のサポートセンターと考え、大いに利用しようと思っている。
http://www.geocities.jp/stardust774/
0825nobodyさん
2014/08/02(土) 21:19:34.16ID:???Railsってそんなに速くなりますか?
0828nobodyさん
2014/08/02(土) 21:29:54.23ID:???手を動かさずに回答をもらえると思うな
0830nobodyさん
2014/08/02(土) 23:21:55.29ID:???0831nobodyさん
2014/08/04(月) 03:15:17.09ID:b+2fcpSQそれに、みんなチンポしごいてるから、だれも答えられないよw
0832nobodyさん
2014/08/04(月) 17:42:24.55ID:???掲示板やメーリングリストを、パソコンオタクが集まる無料のサポートセンターと考え、大いに利用しようと思っている。
http://www.geocities.jp/stardust774/
0833nobodyさん
2014/08/04(月) 17:52:26.45ID:???0835nobodyさん
2014/08/06(水) 22:16:05.77ID:???@articles = Article.all.includes(:categories)
これでN+1は回避できますが、いざView側で
@articles.each do |article|
article.categories.order(:text) each do |category| ....
end
こんなことしてしまうと、N+1になってしまうんです・・・
RubyのArray#Sortは文字の並べ替えはできませんし・・・・
どうすればいいのでしょうか
0836835
2014/08/07(木) 01:21:59.32ID:???0837nobodyさん
2014/08/10(日) 19:44:17.39ID:Cr4W8B/vこれよりさらに高速化するには、sql直書きなど方法があると思うのですが、既に御経験済みの方に質問ですが、どういったコードでやられてますか?
おそらくどちらも通過していないと質問と回答がかみ合わないと思いますので、gem、それより進化型の書き方に到達された方限定で質問させていただきたいと思います。
自分でも目下調査中ですが、宜しくお願い致します。
0838nobodyさん
2014/08/10(日) 20:05:09.82ID:???やっぱりsql使えるところはそっちのがいいのかね。
0839nobodyさん
2014/08/10(日) 20:14:32.42ID:Cr4W8B/v>>837についてのコメントでしょうか?
validationやら色々ついていて、それはそれでいいのですが、大量に処理する時は色々はしょった方が早いこともあるようですね。
大量のINSERTでは、gemもあるのですが、それよりさらに早いやり方があり、それは直書きを使ったもののようです
0840nobodyさん
2014/08/10(日) 20:26:10.26ID:???0841nobodyさん
2014/08/10(日) 23:38:56.35ID:???掲示板やメーリングリストを、パソコンオタクが集まる無料のサポートセンターと考え、大いに利用しようと思っている。
http://www.geocities.jp/stardust774/
0844nobodyさん
2014/08/11(月) 08:31:45.44ID:???http://stackoverflow.com/questions/5317646/mysql-too-many-connections-error-influenced-by-number-of-mongrel-instances
0845nobodyさん
2014/08/12(火) 12:27:37.11ID:???<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say language="ja-jp" voice="woman">はじめまして。電話をかけてくれてありがとう!</Say>
</Response>
http://ascii.jp/elem/000/000/790/790902/
0846nobodyさん
2014/08/12(火) 17:18:00.76ID:???railsでwebpayというツールがあります
webpayを使えば自分が代金の受け取り人であれば問題なく使えます
しかし作っているのは仲介サイトですので、受取人/支払人の間に私のサイトがあります
しかも決済時にいくばくかの手数料をいただきたいと思っています
こういった状況下で何か便利なツールはありますでしょうか?
0847nobodyさん
2014/08/12(火) 19:55:17.40ID:???という感じじゃね?
0848nobodyさん
2014/08/13(水) 00:24:57.82ID:???そういったことが可能なのでしょうか?
私がユーザーから送金され、マージンを差し引いて、商店に送金ですか?
送金手数料とか二重にかからんですかね?
0850nobodyさん
2014/08/13(水) 02:05:41.73ID:???変な奴に目を付けられたら終わりだからね
0851nobodyさん
2014/08/13(水) 03:05:09.70ID:???キャンセルやら倒産やら前払い金やら未納やら、引当金必要かもしれませんね
仰る通りrailsの技術云々よりはるかに複雑怪奇な勉強が必要になるかもしれません
技術的にはペイパルなりwebpayなりを使って、「客が商店へ入金・当方がマージンget・商店が客から入金(手数料&当方へのマージン抜き)」これをお手軽な値段でサポートしているんですかね?
こうなると、たしかにrailsの枠をとっくにはみ出していますね
0852nobodyさん
2014/08/13(水) 03:19:27.40ID:???問題は技術的なものでは既にないね
どういうビジネスを組み立てるか、という話だね
ということで別スレで聞くのが妥当かと思われる
0854nobodyさん
2014/08/13(水) 11:19:18.39ID:WAbkpKFvRails.application.config
じゃなくて
Rails.application.configure
になってるのってただのミス?
0855nobodyさん
2014/08/13(水) 22:02:30.84ID:hhXvcPtz【「指ぱっちん」の天才霊能者八意先生に関するサイト】
日本一の天才霊能者の八意先生は埼玉県八潮市生まれ育ちの21歳です。
悩見事があるときや困ったことが起きたら、まず八意先生に相談しましょう。
以下のサイトをすべて読み終わったら、
腹を抱えて大笑いしてしまうことをお約束します(※ は無料心霊写真鑑定)。
お気に入りに追加することをお勧めします。
※ http://blog.goo.ne.jp/nichikon1/e/de94d2f37f7d074e05e306cd33831224
※ http://blog.goo.ne.jp/nichikon1/e/e066fd39cd23872a3c73cf91f4b50b8c
※ http://blog.goo.ne.jp/nichikon1/e/5aac5cd13eafbf5581a7e2ff79b6c16c
※ http://blog.goo.ne.jp/nichikon1/e/93b5c268d3aefeccd92753a7c58a6ded
※ http://blog.goo.ne.jp/nichikon1/e/788f3056778b0f74495648964bfb1d1e
※ http://blog.goo.ne.jp/nichikon1/e/da81f66fa7c437e7ca19667c2bf35065
※ http://blog.goo.ne.jp/nichikon1/e/d9d05d45085c29df2c0e994a4b60d816
※ http://blog.goo.ne.jp/nichikon1/e/475621ba2615792fe2478f597e31b488
http://www.reinou.jp/bai.html
http://www.reinou.jp/rei.html
http://www.reinou.jp/warashi.html
http://blog.goo.ne.jp/nichikon1
http://www.reinou.jp (八意先生の携帯番号はここ。)
八意先生が口にしたことは絶対に起こりません(地震が発生する日付の予想など)
でも、あなたのどんな悩みでも、八意先生が「指ぱっちん」で解決してくれます。
一応、コメントも含めてすべて読んでみてください。
☆コメントの書き込み・誹謗中傷も大歓迎です。☆
0856nobodyさん
2014/08/14(木) 21:30:20.34ID:???条件式ifで年だけとか月だけとか抽出したいのですが、20140814の最初4桁だけ抽出とか5〜6桁だけ抽出する方法を教えてください
文字列のsliceというのは分かるのですが、数字となるとよく分かりません
0857nobodyさん
2014/08/14(木) 21:43:22.65ID:???0858nobodyさん
2014/08/14(木) 22:53:04.97ID:???0859nobodyさん
2014/08/14(木) 22:56:27.81ID:???ifで数字同士比べる回数が多いので、最初に数字にしています
to_iで数字にしているから文字列のsliceは使えないと思うんですが?
0860nobodyさん
2014/08/15(金) 00:54:15.96ID:???0861nobodyさん
2014/08/15(金) 02:24:58.43ID:???0862nobodyさん
2014/08/15(金) 04:23:05.96ID:???20140815%10000/100
0863nobodyさん
2014/08/15(金) 08:08:06.19ID:bAjs3HZL>> 最初4桁だけ抽出
チョメチョメ.year
>> 5〜6桁だけ抽出
チョメチョメ.month
0864nobodyさん
2014/08/15(金) 17:42:44.79ID:???youtubeのサムネイルを再生中に
裏でajaxのリロードをかけて
ページの一部の情報を書き換えようとするとするタイミングで
再生していたyoutubeの動画が止まります
これは仕方ないのでしょうか?
youtubeは再生させつつ
裏でajaxをロードすることは不可能ですか?
0865nobodyさん
2014/08/15(金) 17:49:59.48ID:???Railsとどこに関係があるのか
0866nobodyさん
2014/08/15(金) 22:03:12.41ID:???railsやり始めたんだけど
getでurl受け取りたいんだけど
routesで
get 'apis/geturl/:target' => 'apis#getUrl'
とかやったんだけど
http://example.com/apis/geturl/{ここにエンコードしたURL}
にアクセスするとエンコード文字列のパーセント(%)とかで
うまく値渡せないんだけどどうすればいいの??
0867nobodyさん
2014/08/15(金) 23:14:59.52ID:???0868866
2014/08/15(金) 23:15:44.52ID:???http://example.com/apis/geturl?target={ここにエンコードしたURL}
でいけたわ
0869nobodyさん
2014/08/15(金) 23:55:40.65ID:???サックサクに動かすなら
セグメントキャッシュとか
キャッシュを駆使しなきゃダメ?
なにかコツとかありますか?
0872nobodyさん
2014/08/16(土) 21:58:42.23ID:???さくらVPSの4Gでアプリ動かしてDBサーバー別に設置してるだけでさっくさく動くけどなあ
複雑なリレーション貼ってたりするとまた話は別なんだろうけど
>>871くらいなら何も考えなくてもつまりそうにない気がする
0873nobodyさん
2014/08/17(日) 15:04:46.54ID:???def hoge_params
params.require(:hoge).permit(:title, :text)
end
のようなプライベートメソッドが定義されていました。
これを利用して、そのコントローラのアクション内部で
title = hoge_params[:title]
のような記述で、値を取得している箇所があったのですが
メソッドを配列呼び出ししていることに????となりました。
rubyではメソッドに対して配列呼び出しを行うと
メソッドを実行し、その戻り値を利用して配列呼び出しが行えるというような
認識でよろしいのでしょうか。
助言よろしくおねがいします。
0875nobodyさん
2014/08/17(日) 18:38:10.19ID:???いつも同じ奴じゃん
回答に礼もしないし
0876nobodyさん
2014/08/17(日) 21:38:27.62ID:???> メソッド名を英文字の大文字で開始した場合には括弧は省略できません。
なるほど…。
関数を実行するんじゃなくて関数自体を取得したいときはどうするん?無理??
0878nobodyさん
2014/08/17(日) 23:19:14.20ID:???素のSQL書くわけにもいかないしDBまわりはある程度妥協するとして他には?
0879nobodyさん
2014/08/17(日) 23:54:07.49ID:???JSONだけ返してJSで全て描くようにしたらいい
0880nobodyさん
2014/08/18(月) 03:45:07.85ID:PRdXpwjCと
connection.execute(mysql直書き)
とを組み合わせたら、大量の処理も一瞬でこなすすぐれものになったのですが、
これに落とし穴ってありますか?
何かありましたら教えてください
0881nobodyさん
2014/08/18(月) 07:09:18.04ID:???DBのポータビリティは落ちてるような気がするけど、ActiveRecordの機能を使わない選択肢も
あっていいんじゃない?
0882nobodyさん
2014/08/18(月) 21:33:50.76ID:???0883nobodyさん
2014/08/18(月) 23:45:11.08ID:???ARオブジェクトじゃないと使いづらそうだが。
0884880
2014/08/19(火) 20:01:09.85ID:Zk8d36P8戻り値あるんですか?単にsql実行するだけかと思っていましたが。
かなり複雑な処理をしてcreateを連発ってことをやってて、gemのimportも効果がない案件でした。
10秒かかる処理が0.1〜0.3秒でこなすようになりました。
例外処理を少しやらなければいけないのかもしれません。自分はそこがよく分かっていませんが。
0885nobodyさん
2014/08/19(火) 21:25:23.23ID:???そういうバッチみたいなことならそういうやり方もあるだろうね
メインとなる読み出しの方は普通にActiveRecord使うってこと?
0886880
2014/08/19(火) 22:03:37.04ID:Zk8d36P8当然メインはActiveRecordです。
これ以上出来ないくらい工夫してなお複雑大量の処理をせざるを得なかったので、荒業的に使ってみました。
初なので、これからrescueとか必要ぽいのを研究してまいります
0887nobodyさん
2014/08/19(火) 22:15:58.47ID:???だったらそう書かんと分からんやろ…
0888880
2014/08/19(火) 22:55:09.34ID:Zk8d36P8元々はrescueで書くべき内容について知りたかったので書き込みしたのですが、その点いかがでしょうか?
0889nobodyさん
2014/08/20(水) 00:26:20.76ID:???ありがとう
DB鯖(MySQL)とアプリ(&Unicorn)を分けるだけで
そんなにも早くなるの?
なんかネットワーク越えとかさせると遅くなりそうなイメージだけどなぁ
ちなみに一日あたりのPVはどれくらい?
0890nobodyさん
2014/08/20(水) 08:10:17.04ID:???0891nobodyさん
2014/08/20(水) 10:41:32.34ID:???Hogeモデルに適当なメソッドを作成し
そのメソッド内部でPiyo.find(:all)を書きました。
そのメソッドを適当なViewから呼び出してみたのですが
ActiveRecord::RecordNotFound というような例外が発生し
Piyoモデルのすべてのデータを取得できませんでした。
試しにメソッド内部のコードをPiyo.countに変えてみると
Piyoモデルのカラム数を取得できました。
あるモデルから別のモデルのデータを取得することはできないのでしょうか??
なにかお気づきの点があったらご指摘お願いしますm(_ _)m
0892nobodyさん
2014/08/20(水) 11:48:13.88ID:???0893nobodyさん
2014/08/20(水) 17:06:51.14ID:???where
0894nobodyさん
2014/08/20(水) 17:21:01.35ID:???1日平均10万PVくらいだよ
DB鯖とAppサーバーを分けるのは高速化したいなら必須というかまず最初にやるべき
さくらのSSD使ってるなら石狩でしょ?ローカル接続で繋げられるから遅延0だよ
0895nobodyさん
2014/08/20(水) 19:53:08.64ID:???ありがとう
ローカル接続って特殊なことしなきゃダメ?
それともconfigのproductionのデータベース接続で普通に直IPを指定してやればいいだけなのかな?
0899nobodyさん
2014/08/21(木) 21:16:32.00ID:???0900nobodyさん
2014/08/21(木) 21:20:42.03ID:???>>898
>>899
↑こいつら同一人物注意
以前ここで質問するも
あまりにも稚拙な質問だったためスルーされた
それを機にこのスレの住人に敵意むきだし
0901nobodyさん
2014/08/21(木) 21:32:40.70ID:???おたく「稚拙な質問」と言うくらいレベル高いなら手始めに>>898>>899あたり答えてみれば?
答えられないから煽り教えて君とか言って逃げるだろうけどw
0903nobodyさん
2014/08/21(木) 21:39:05.41ID:???→答えられる奴不在
→レベル低いスレ住民と馬鹿にする人間が出現
→煽り教えて君と自己防御
こればかりだなw実際は質問者と馬鹿にしている人間は全く別なんだが、逃げ方が頭悪いからワンパターンw
0904nobodyさん
2014/08/21(木) 22:07:38.36ID:???的確な表現だな
0905253
2014/08/21(木) 22:15:49.58ID:OGslXsxjRails側はdatabase.ymlを書き換えてDB鯖を見に行くようにすればok
0906nobodyさん
2014/08/21(木) 22:51:23.41ID:???やっと"煽られて"一問答えられる奴が出てきたな
基本は何も答えられない>>904みたいな愚図ばかりw
0908nobodyさん
2014/08/21(木) 23:24:01.91ID:OGslXsxj漠然とした問いなんで漠然とした答えしか書けないが、
DBのロールバックかけつつ、エラーメッセージ出したりエラーログ吐いたりアラートメール飛ばしたり、とかかね。
システムの運用保守体制やら考慮して、としか答えられんわ…
0909nobodyさん
2014/08/21(木) 23:30:18.13ID:OGslXsxj0910nobodyさん
2014/08/21(木) 23:47:29.79ID:???0911nobodyさん
2014/08/22(金) 00:01:51.00ID:???結局答えられない虫けらかよ
俺は解答こそすれ一回も質問したことないんだがw
答える気もないなら、なんでここに常駐してるんだ?皆煽り〜君に見えるんだろ?
お前みたいなゴミクズはどこにいても役に立たないから、存在価値なし。バイオ燃料にでもしてもらっとけよ、下等生物が
0912nobodyさん
2014/08/22(金) 00:03:44.34ID:???zabbixなどの一般的な監視システムじゃね。
JavaでのJMXのような仕組みがRubyにはない(ある?)から、もう少し突っ込んだ情報が欲しいとなると、作り込みになるけど。
0913nobodyさん
2014/08/22(金) 00:17:38.77ID:???悪いけど
>>872
>>894
>>897
これは全部俺だよ
疑心暗鬼になるのは別にいいけどところ構わず噛み付くのは良くないと思うよ
>>897の発言だけど
それ以前の内容は実際に運営してる人じゃないと答えられないことだから答えたけど
別IPのDBにアクセスするなんて初心者用教本にも載ってるレベルの内容だし
流石にググったほうがいいでしょ
「rails database.yml 別サーバー」とかで検索すればいくらでも出るじゃん?
例:http://d.hatena.ne.jp/japanrock_pg/20070920/1190288070
1から100まで教えるのがこのスレの目的って言うなら教えるけど流石にそのレベルまで教えなきゃいけないんだったら
悪いが俺はROMるわ
くだらない煽りあいするくらいなら次スレ以降
質問者はIDを出して初出レスNoを名前欄に出すでいいんじゃない?
0914913
2014/08/22(金) 00:20:47.27ID:???レス読み直したら俺がぐぐれって言ったのは
「さくらVPS同士をつなげる方法」と、「特殊な対応」の点だな
これはRailsまったく関係ないからスレチって言ったんだ
このスレはRails関係ないとこまで懇切丁寧に教えるべきなの?
0915911
2014/08/22(金) 00:23:11.83ID:???ほとんど答えられない虫けらが疑心暗鬼さだけ曝け出しているのがこのスレだから、たまに矯正してやらなあかんのよ
おつかれさん
0916nobodyさん
2014/08/22(金) 04:02:06.32ID:???0917nobodyさん
2014/08/22(金) 07:46:06.04ID:X3q7esOVやはり、ZABBIX辺りになりますか。
昔、監視項目の設定で挫折したけど、もう一度チャレンジしてみるか…
0918nobodyさん
2014/08/22(金) 23:09:27.40ID:???0920nobodyさん
2014/08/23(土) 12:20:33.39ID:???http://b.hatena.ne.jp/entry/postd.cc/why-go-is-not-good/
Farewell Node.js (翻訳) - from scratch
http://b.hatena.ne.jp/entry/yosuke-furukawa.hatenablog.com/entry/2014/07/06/094617
PHP、かつてWebで人気だった言語が下火になりつつある | ReadWrite Japan
http://b.hatena.ne.jp/entry/readwrite.jp/archives/12295
Why do so many developers hate PHP?
http://www.reddit.com/r/PHP/comments/1fy71s/why_do_so_many_developers_hate_php/
0922nobodyさん
2014/08/23(土) 23:30:37.26ID:???大してアクセス数がないのに重すぎます。
会員制なだけにページキャッシュの選択肢は難しいですし、
フラグメントキャッシュは大して効果がないと聞いています。
こんな状態で
アプリケーションサーバーとDBサーバーを分けるだけでレスポンスが早くなるもんでしょうか?
0923nobodyさん
2014/08/23(土) 23:38:43.79ID:???メモリ割り当てが極端に小さくなっていないか、とか。
0924nobodyさん
2014/08/23(土) 23:53:01.70ID:???どこが遅いかを突き止めないと
0926nobodyさん
2014/08/24(日) 00:50:47.69ID:???dbは何?バージョンは?
max_connectionsはいくつ?
ピーク時のconnection数は?
0929nobodyさん
2014/08/24(日) 00:57:00.63ID:???DBはMySQL5.1でmy.cnfは下記のとおりです
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-external-locking
key_buffer_size = 512M
table_cache = 256
tmp_table_size = 256MB
join_buffer_size = 1M
thread_cache = 8
thread_concurrency = 8
thread_cache_size = 60
query_cache_size = 32M
max_connections = 100
max_allowed_packet = 1M
table_open_cache = 256
sort_buffer_size = 4M
net_buffer_length = 8K
read_buffer_size = 1M
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
character_set-server=utf8
innodb_buffer_pool_size=384M
innodb_log_file_size=128M
slow_query_log=ON
slow_query_log_file=mysql-slow.log
long_query_time=1
0930nobodyさん
2014/08/24(日) 00:57:35.43ID:???quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
default_character_set=utf8
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
0931nobodyさん
2014/08/24(日) 03:34:53.65ID:???DBサーバーのMySQL5.5の設定は
>>929、>>930の設定と同様にしました。
結果としては、速度向上は体感できませんでした。
やはり>>929、>>930の設定
もしくは、発行しているSQLに問題があるのでしょうか。。。。
0932nobodyさん
2014/08/24(日) 10:00:58.98ID:???はっきり言うがスレチだ
せめてActiveRecordでこういう風に発行してるくらいあるならまだ答えるけど
Mysqlの設定ズラズラ並べるならここで聞くよりからその話題に関してはMysqlスレ行ったほうがいい
そっちのほうが質のいい答え帰ってくるから
あとSQLもindexもテーブル構成も貼らないのにエスパーは出来んよ……
ちなみにそれに関してもSQLスレがあるからそっちでどうぞ
Railsとあまりにも関係ないことは専門の人が居るとこ言ったほうがいいよマジで
ここはRailsスレだからインフラ周りは仕方なくやってる人が多いだろうし専門の人は少ないだろう
0933nobodyさん
2014/08/24(日) 11:19:14.15ID:???ご指摘ありがとうございます
せめてDBサーバーとアプリサーバーの切り分けの効果について教えていただけませんか?
Railsでこれが本来どれほどの効果をもたらすのかは知りたいところです
0935nobodyさん
2014/08/24(日) 13:45:18.63ID:???こういうのって一問も答えられないのにこの板を荒らしに来る荒らしだと思われ
完全スルーすべき無能な下層の人々だと思う
現実世界では確実にニーズない人材
0936nobodyさん
2014/08/24(日) 14:13:14.47ID:???そんなのはケースによるとしか
一般論としてはDBがCPUやメモリやディスクIOを食いまくっててRailsのプロセスにリソースが
まわってきてない状態だったら分ける効果はあるだろうけど
何にせよパフォーマンス改善は闇雲にやるんじゃなくて、きちんとした原因追跡が最重要
小手先でこねくりまわす暇があったら状況分析に力を注ぎましょう
0937nobodyさん
2014/08/24(日) 15:05:31.38ID:???ありがとうMySQLチューナーとか使って色々ためしましたが
あまり効果がないようです
やはりページキャッシュ化していくしかないようです
しかし、会員制サイトなので難しいです。
かといってフラグメントキャッシュは効果的じゃないみたいですね
0938nobodyさん
2014/08/24(日) 18:59:48.46ID:???show global status like 'Max_used_connections';
0939nobodyさん
2014/08/24(日) 19:02:35.41ID:???色々試すんじゃなくて、原因をしっかり特定しろと言ってるんだよ
原因が分からない状態で対策の立てようなんかないだろ?
0941nobodyさん
2014/08/24(日) 20:34:48.03ID:???0942nobodyさん
2014/08/24(日) 22:31:51.30ID:???この辺
key_buffer_size = 512M
tmp_table_size = 256MB
innodb_buffer_pool_size=384M
InnoDBつかってるなら、上二つをもう少し減らせる(最低限システム用があればいいから)。
MyISAMつかってるなら、そもそもskip-innodbしてしまうとか。
0943932
2014/08/24(日) 23:38:52.39ID:???切り分けの効果と言われてもケースバイケースだからなんとも言えない
アプリがほぼ静的だったら切り分けても効果ない
他の人も言ってるけどまずは特定しろ
「料理がまずいです。鍋が悪いと思うので包丁交換したほうがいいですか?」
君の発言はこんなレベル
しょっぱいのかこげたのかも何もわからないし何もアドバイス出来ない
原因もわからず塩追加したり水いれたり火力下げたり
それで直るわけ無いじゃん
0944nobodyさん
2014/08/25(月) 16:34:00.83ID:???http://www.slideshare.net/hashikem/rails-presentation-667968
ページキャッシュをしようとした場合の問題
ログイン情報による動的な変化
「○○さんようこそ」
アクセスログ
広告配信
この3つについて、 Ajax の1リクエストで処理
0945nobodyさん
2014/08/27(水) 00:23:02.48ID:NypxgQhc後で、compactを使って消し去るので、空白処理よりnilで処理しておいた方がやりやすいのですが
0947nobodyさん
2014/08/27(水) 01:00:37.73ID:NypxgQhcありがとうございます!!
0948nobodyさん
2014/08/27(水) 04:04:24.17ID:???0951nobodyさん
2014/08/27(水) 20:19:15.81ID:???0955932
2014/08/28(木) 10:39:54.71ID:???PHPで比べても3倍以上行数削減できるのに
0956nobodyさん
2014/08/28(木) 14:46:31.19ID:???まともなやつPythonを使いRubyなんて使うのは馬鹿なやつ
PHPと比べて3倍以上行数削減なんてのも嘘っぱち
0959932
2014/08/28(木) 15:30:28.18ID:???0961nobodyさん
2014/08/28(木) 21:01:12.19ID:???来年は追い抜くことになるけど、はたしてどの位差がつくか。
0962nobodyさん
2014/08/28(木) 23:40:32.90ID:???d2 = ", #{params[:user_id]}, #{params[:money]}"
if params[:unko]
d1 += " AND unko = ?"
d2 += ", #{params[:unko]}"
end
if params[:manko]
d1 += " AND manko = ?"
d2 += ", #{params[:manko]}"
end
d=d1+d2
results = Hogero.where(d)
こういう感じで複数の検索条件を使った検索をしたいと思っているのでが、プレースホルダのところにハマってくれずうまくいきません。
プレースホルダを使ったやり方は難しいのでしょうか?自前でやるとするとどういうやり方があるのでしょうか?
0963nobodyさん
2014/08/28(木) 23:43:30.38ID:???user = User.where(user_id: params[:user_id).where(money: params[:money]
user = user.where(unko: params[:unko]) if params[:unko]
user = user.where(manko: params[:manko]) if params[:manko]
0965nobodyさん
2014/08/28(木) 23:56:56.49ID:???失った時間で何回シコシコできたことか・・・
あっ、すみません、ありがとうございました!!
ORでつなぐのは難しいけど、ANDは簡単なものが用意されてたんすね
0969nobodyさん
2014/08/29(金) 00:33:40.64ID:???毎日のように質問者にイチャモンつけてる低能だろ
お前みたいな奴がいるからこのスレ荒廃してんだよ
お前みたいなクズはどこでも誰からも必要とされないんだよ
0970nobodyさん
2014/08/29(金) 01:06:52.50ID:???Rubyなんてもともと荒廃してんだろ
0971nobodyさん
2014/08/29(金) 23:07:13.87ID:???私はmahoutで自作してます
0973nobodyさん
2014/08/29(金) 23:51:10.22ID:???本当にダメダメなら完全に無視されるだけだから
0974nobodyさん
2014/08/30(土) 00:59:25.61ID:???相対的にどうなのかをアンケートしているわけで、
その順位を答えられないレベルの人間は答えなくていいよ。
どっちも使ったことないんだろ、どうせ。
0975nobodyさん
2014/08/30(土) 01:17:50.08ID:???笑わせんな( ^∀^)ゲラゲラ
0976nobodyさん
2014/08/30(土) 01:21:48.21ID:???0977nobodyさん
2014/08/30(土) 01:32:07.24ID:???最近低レベルな分際で質問者を罵倒したりしてんのもこいつだろうな
使えないと認定しているもののスレに来て毎日くそみたいなレスしていくってどんだけ効率悪い人生なんだろう
ここでツバ吐いてもお前のその虫けら相当額の給料は一銭も変わらないというのにw
社会から認められていないゴミクズの行動は非常に非合理的だよ(笑)
その滑稽さで楽しませてくれw貧民のクズ野郎が
0978nobodyさん
2014/08/30(土) 01:34:58.17ID:???あっ、こいつ、うちの窓際です!
リストラ寸前の最下層なんですが、会社では一言もしゃべりません!
こんなところでペラペラしゃべっていたんですね!
うちの会社の虫けらがご迷惑おかけしました!間もなくクビにできますのでご容赦を!
0979nobodyさん
2014/08/30(土) 01:37:06.71ID:???妄想だけで生きてるガチクズの集まりそれがRoRスレ
0980nobodyさん
2014/08/30(土) 01:41:38.83ID:???会社の人が迎えに来てるんだから帰れよw
薄給でクビ寸前なんだろ?努力しないの?
違う所で鬱憤を消費しちゃうから君はいつまでもクズなのだよ^^
お前ごときが統計分かるわけねえだろwじゃあな
0983nobodyさん
2014/08/30(土) 01:56:59.61ID:???オー怖い怖い
初心者はこんなところさっさとさりましょう
洗脳されて変な人になります
0984nobodyさん
2014/08/30(土) 02:56:40.60ID:???0986nobodyさん
2014/08/30(土) 06:42:04.99ID:???0987nobodyさん
2014/08/30(土) 11:03:26.68ID:???じゃ、お前は次スレに来なくていいよ
RubyもRoRも終了してるんだから次スレも過疎るだけのはずだもんね!
0988nobodyさん
2014/08/30(土) 19:35:50.21ID:???ググったところ、コールバックを利用して
各ユーザーごとでTwitterにログイン→認証して、各ユーザーのTwitterへツイートを送信
という例は沢山あります。
しかし、やりたいのは
各ユーザーがいちいちログイン認証せずとも
こちら側で用意した1つのTwitterアカウントに
一律毎回ツイートを送信したいです。
何か参考になる方法をご存知の方がいましたらご教授ください
0996nobodyさん
2014/08/30(土) 22:14:11.16ID:???0997nobodyさん
2014/08/30(土) 22:14:43.35ID:???0998nobodyさん
2014/08/30(土) 22:15:15.73ID:???0999nobodyさん
2014/08/30(土) 22:15:50.50ID:???1000nobodyさん
2014/08/30(土) 22:16:21.63ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。