トップページ⇒php
1001コメント350KB

【RoR】Ruby on Rails Part18

■ このスレッドは過去ログ倉庫に格納されています
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
0587nobodyさん2014/06/29(日) 23:27:29.83ID:???
>>586
SQLは上級者向け言語ですから(キリッ
0588nobodyさん2014/06/29(日) 23:29:56.46ID:???
>>581を見ると一般的なhmtの使い方をしてなさそうだが
0589nobodyさん2014/06/30(月) 01:56:18.43ID:???
>>571
要するにあほだな
0590nobodyさん2014/06/30(月) 07:20:11.22ID:???
すべてはJSONになる

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
0591nobodyさん2014/06/30(月) 08:08:53.97ID:???
>>584-588
一人でなにしてんの?
0592nobodyさん2014/06/30(月) 08:46:11.40ID:???
一人だったんだ
0593nobodyさん2014/06/30(月) 08:50:39.79ID:???
運用板で確認したらマジで一人の自演でくっそわろたwwwwwwwwww
0594nobodyさん2014/06/30(月) 09:34:06.17ID:???
>>593
運用版みれるんだすごいな
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+3
この板IDつかないのか
0597nobodyさん2014/06/30(月) 12:46:14.05ID:???
sageなきゃつくよ
0598nobodyさん2014/06/30(月) 22:59:59.83ID:???
application_helper内で
@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:nJV1b0sU
php
0602nobodyさん2014/07/01(火) 01:54:38.36ID:???
ぺちぱー
0603nobodyさん2014/07/01(火) 07:23:18.33ID:???
>>600
「無理だった」だけじゃ理由なんてみんな分からんよ
0604nobodyさん2014/07/01(火) 12:57:15.67ID:???
>>600
言葉遣いが悪くて、返答する気持ちが全然おきない。
0605nobodyさん2014/07/01(火) 20:55:47.96ID:XzNxeXAu
>>581
has_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:???
JSON
0607nobodyさん2014/07/03(木) 01:09:59.72ID:???
>>605
mysqlの問題だよ
5.6はわからんけど
5.5まではjoinとかサブクエリとかINとか使ったら遅くて使い物にならん
0608nobodyさん2014/07/03(木) 01:22:03.64ID:???
じゃあバージョン上げりゃいいじゃん
0609nobodyさん2014/07/03(木) 21:27:15.30ID:lAObJFwK
>>607
MySQL 5.5 のリリース開始が2011年頃で
しかも has_many through は
すでに Rails 1.0 で実装されていた
そんな3年前のありふれたソフト構成で、
たかが数万件の検索に数十秒を要する性能問題の原因が
MySQL にあるとは考えられない
0610nobodyさん2014/07/03(木) 23:01:26.64ID:???
故にRailsは糞、だろ
0611nobodyさん2014/07/03(木) 23:04:48.64ID:???
はいはい、お薬多めに処方しておきますね
0612nobodyさん2014/07/03(木) 23:33:56.46ID:???
>>609
MySQLの遅いポイントは有名だけどよ。
そんな少ない件数で起きる話ではないよな。
0613nobodyさん2014/07/04(金) 00:51:43.59ID:???
で?結論はなんなのよ
0614nobodyさん2014/07/04(金) 02:49:53.83ID:???
MySQL vs Rails の対決が見れると聞いてやってきました
0615nobodyさん2014/07/04(金) 02:51:48.01ID:???
このスレの殺伐感。たまんないね。
0616nobodyさん2014/07/04(金) 04:52:28.37ID:iiWE9XVi
「新版リリースのたびに他製品を選ぶ理由が薄れる」--PostgreSQL開発者インタビュー(前編) - ZDNet Japan
http://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:12HindV2
Boric bait
0619nobodyさん2014/07/05(土) 10:38:39.82ID:???
mysqlよりはpostageのほうが今は人気だよね、でも今まで名だたるサイトがmysql使ってきたのに素人のおもちゃレベルのもので使えないほど遅くなるわけが無いよね
上の例に関しては適切にindex貼ってないだけだからrailsもmysqlも関係ないけどね
0620nobodyさん2014/07/05(土) 10:43:54.42ID:???
mysqlで遅いって言ってるひとの大半は使い方を間違ってる
0621nobodyさん2014/07/05(土) 12:17:16.21ID:???
mysqlって実装されてる機能の範囲では最速ってイメージだな
0622nobodyさん2014/07/05(土) 13:19:44.90ID:???
index貼ってないとか、slow logに出るだろ。ひょっとしてexplainすらしてないのか?
0623nobodyさん2014/07/06(日) 01:31:33.21ID:???
>>617
白蟻対策じゃなくて防蟻対策ということは、蟻側の視点で「どうやって防蟻剤を突破して家を食うのか?」ってこと?
0624nobodyさん2014/07/06(日) 08:27:50.77ID:vvaN7WsG
私は仕事で古い(脆弱と言う人もいる)Webスクリプト言語(Perl)で書かれた多くのレガシーコードによるWebベースのサービスを扱っている。
Mooseのような新しい拡張を使ってはいるものの、この言語は柔軟性に欠けていると感じる。
レガシーコードのサポートを避けることはできないので、当分はサポートを続ける予定にしているが、
新たに開発するものに関しては、もっと現代的でWebアプリケーションに使われている言語を使いたいと思う。
フレームワークごと変えてしまってもいい。
http://developers.slashdot.jp/story/14/07/05/0819214/
0625nobodyさん2014/07/06(日) 09:26:17.63ID:???
MySQLクラスタリングで、32GBのサーバー10台に分散しているシステムが、ioDriveを使うと1台でおさまったりするので、コスト効果もいい。
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:???
Farewell Node.js (翻訳) - from scratch
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:???
SQLインジェクションの脆弱性キタ━(゚∀゚)━!
0632nobodyさん2014/07/07(月) 21:32:29.54ID:???
インジェクションて?
0633nobodyさん2014/07/07(月) 21:42:16.11ID:???
productionモードではhttp://admin.hoge.com/index、
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:???
productionモードではhttp://admin.hoge.com/index、
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:???
>>634
Rails は勝手に admin.rb を読んだりはしない
読むようにさせるには
・auto_load の仕組みが働くように規約に沿ったファイル名で規約に沿った位置に置く
・config/application.rb などで require で読む
のどちらか
0636nobodyさん2014/07/08(火) 01:50:17.32ID:???
>>635
ありがとうございました。
0637nobodyさん2014/07/08(火) 12:00:32.32ID:???
天安門事件
0638nobodyさん2014/07/08(火) 13:08:22.16ID:???
ここは日本の掲示版です。
0639nobodyさん2014/07/08(火) 20:31:54.04ID:???
"Entry"というモデル名をさける
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
http://qiita.com/toyoshi/items/052b861c618831ea6e64

部分テンプレートで複数のラベル群を作ると一意性がなくなって、混線しちゃいます。
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などのようにしたいのですが、
その生成の仕方を知りません。ヘルパーメソッドとかではなく、自然体の書き方としてそういったやり方が用意されているなら知りたいです。
宜しくお願いします
0641nobodyさん2014/07/09(水) 01:51:58.32ID:???
>>640
なるほど、参考になります。もっと貼ってください
0642nobodyさん2014/07/09(水) 01:53:25.24ID:???
天安門事件
天安門広場
文化大革命
0643nobodyさん2014/07/09(水) 02:13:20.30ID:HDQ993Cd
>>641
いやいや、私も道半ばの人間でして、ここで質問させてもらってるのです
でもついでにお役にたてるなら幸いですが
0644nobodyさん2014/07/13(日) 20:52:54.97ID:???
Ruby on Roadsってどうですか?
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+
>>645

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:???
>>646
わざわざありがとうございます
言ってることはちっともわかりませんが直ることは無さそうということで諦めて違う方法考えます!
0648nobodyさん2014/07/15(火) 03:57:15.59ID:lCP2M1NV
予約システムを作っていますが、日本語・英語で参考になるサイトを知っている方はいますか?
0649nobodyさん2014/07/15(火) 07:09:21.95ID:???
>>648
もうちょっとスレに沿ったレベルまで噛み砕いてからおいで
0650nobodyさん2014/07/15(火) 19:48:09.35ID:lCP2M1NV
>>649
明らかに作ったことなさそうだね
君みたいなレべルの人間は黙ってていいよ
0651nobodyさん2014/07/15(火) 20:05:39.19ID:???
やはりいつもの煽り教えて君でしたとさ
0652nobodyさん2014/07/15(火) 20:08:38.56ID:lCP2M1NV
?
君が教えれるレベルとも思わないし、私が君に教わるレベルでもないと思うよw
開発したことある人なら参考になるサイトを見ている可能性があるから、聞いてみたまでで、君のように開発したこともなく英語も読めなさそうな人には当てはまらない質問なんだけどね〜
まぁ頑張って生活してちょw
0653nobodyさん2014/07/15(火) 21:52:52.68ID:???
>>648
またお前か、つまんねーよ。けえれ
0654nobodyさん2014/07/15(火) 21:53:43.32ID:???
なんとこのスレでNG登録したったwww
0655nobodyさん2014/07/15(火) 21:54:16.28ID:???
>>655
この悔しがりようWwwww
0656nobodyさん2014/07/15(火) 22:24:25.17ID:???
キタ━━━━(゚∀゚)━━━━!!
もっと貼ってくれ
0657nobodyさん2014/07/15(火) 23:11:04.07ID:???
煽り方がワンパターンだな。
0658nobodyさん2014/07/16(水) 09:29:52.66ID:???
さあ、いつものように荒れてまいりました。やっぱrorスレはこうでなくては。
0659nobodyさん2014/07/16(水) 17:10:18.04ID:???
Qiitaってサイトがあって
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)

こんな感じなんだけどさすがに煩雑すぎるしもっとスマートな方法があると思うんだが何かいいやりかたしりません?
0660nobodyさん2014/07/17(木) 03:09:55.78ID:???
>>659
低レベル
しねよ
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:???
英語がどうのこうの言わないで素直にわかりませんて言えよ低脳w
0665nobodyさん2014/07/18(金) 23:00:53.09ID:???
@664 = "低給"
0666nobodyさん2014/07/19(土) 08:53:50.37ID:???
見ればわかる通りこのスレの住民は低レベルな上に人を見下して煽ることしかできないからちょっと難しいことを聞いたら答え帰ってこないよ
俺ならその問題の場合はtwitterと同じように宅配形式でやるかな
でもそこまですんのもって感じではあるんだよね
0667nobodyさん2014/07/19(土) 09:10:40.33ID:???
> twitterと同じように宅配形式
kwsk
0668nobodyさん2014/07/19(土) 09:41:31.08ID:???
アンフェアな工作
0669nobodyさん2014/07/19(土) 14:06:46.96ID:???
>>666
じゃあこのスレの存在異義ってなんなんですか?
part18まで行ってるのにこのザマなのってどういうことですか?
0670nobodyさん2014/07/19(土) 18:13:40.68ID:???
>>667
今外だから要点だけ話すけど

タイムラインの表示を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:???
>>669
終始こんな感じだろ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:???
煽り教えて君が最初に登場したときもID出してて自演がバレたのが切欠だったな
0673nobodyさん2014/07/19(土) 22:49:12.71ID:???
>>672
勘違いしているようだけど、教えてもらう気なんて全くないし、必要ないからなw
分からないことがあれば英語でググればたいていあるし、ここで質問している奴や、答えられていないお前等は失笑もの

ほなさいなら
0674nobodyさん2014/07/20(日) 01:22:55.40ID:???
>>1-673
変人の自作自演スレだということがよくわかった。

ほなさいならw
06756592014/07/20(日) 10:16:44.08ID:???
>>670
ありがとうございます
メールボックスみたいな感じですね、ただおっしゃってる通りちょっと大げさって感じはします
速度はそこまで求めないのでシンプルな方法があるといいのですが

>>671
質問がまったくRailsと関係ないのでRailsでどうするのか噛み砕いてから質問してくれってごく当たり前の反応だと思うんですけど
どうぞ英語サイトで好きなだけ検索してください
0676nobodyさん2014/07/20(日) 14:15:17.33ID:???
>>675
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:???
>>678
あなたはいったい何がやりたいの?
スレを荒らしたいだけ?

なりすましされるので
一応トリップつけて
ID表示しときます
0680nobodyさん2014/07/20(日) 14:38:53.09ID:???
質問させてください

4つくらいのテーブルを繋いでいて
最終的に一番最後に繋がるテーブルのカラムでDESCソートをかけると
異様に時間がかかります
(結果が表示されるまで30秒ほど)
その最後のテーブルには1万レコードほどあります。


DESCソートを無くすと結果が2秒で返ってきます

しかし、その最後のテーブルのカラムでDESCソートはかけたいです
これを早くするための方法が分かる方はいませんか?
0681nobodyさん2014/07/20(日) 14:41:05.27ID:???
>>679
いや、こんな低レベルの糞スレ、あるだけ無駄
というか有害だから埋めて消し去れと言っているんだよ

低レベルの質問と、低レベルの質問にしか答えられない低級ワーカーばかりのスレなんていらないんだよ

このスレがなければ、虫けらどももここで答えを引っ張り出そうとするんじゃなく英語勉強しぐぐりまくる方に向かう
健全だろ

だから消しとけよこの糞すれ
0682nobodyさん2014/07/20(日) 15:00:00.49ID:???
>>679
いや、こんな低レベルの糞スレ、あるだけ無駄
というか有害だから埋めて消し去れと言っているんだよ

低レベルの質問と、低レベルの質問にしか答えられない低級ワーカーばかりのスレなんていらないんだよ

このスレがなければ、虫けらどももここで答えを引っ張り出そうとするんじゃなく英語勉強しぐぐりまくる方に向かう
健全だろ

だから消しとけよこの糞すれ
0683nobodyさん2014/07/20(日) 15:00:37.24ID:???
>>677
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:???
>>684
> seconds_from_midnightでは終了時間が日をまたぐものでは使えない恐れもあります
2:00 を 26:00 と考えれば解決
0686nobodyさん2014/07/20(日) 15:37:47.77ID:???
>>685
seconds_since_midnightは0:00からの秒数ですよね
私は現在空いているジムの検索にもこのデータを使いたいのですが、これじゃ全く使えませんよね?
■ このスレッドは過去ログ倉庫に格納されています