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

【RoR】Ruby on Rails Part15

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2012/07/07(土) 00:50:39.45ID:???

http://kohada.2ch.net/test/read.cgi/php/1329492840/

■参考サイト
<英語>
本家: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/

【ヘロク】 Heroku Part1 【PostgreSQL】
http://toro.2ch.net/test/read.cgi/hosting/1329378677/
0582nobodyさん2012/11/21(水) 12:06:15.42ID:bGZkbmii
http://crowdworks.jp/public/jobs/2595
0583nobodyさん2012/11/21(水) 15:10:26.90ID:???
コントローラ内の全てのアクションをキャッシュするようにしたいとき
簡単に指定する方法はありませんか?

instance_methods(false).each{ |action| caches_page action }
としたら一番下に書かないと駄目みたいでそれは避けたいです。
0584nobodyさん2012/11/21(水) 23:28:20.97ID:zJbRMsxp
>>583
是非は別として、method_added フックでやったらどうか。
0585nobodyさん2012/11/22(木) 20:19:57.01ID:???
RESTFULLなURLの参考になるサイト無い?

検索とかのURLとかどうすればいいか悩む
0586nobodyさん2012/11/22(木) 21:31:58.25ID:8YsF3rYJ
検索は、「フィルターを指定した一覧」と解釈するのがよいのでは?
つまりcollectionのGET
0587nobodyさん2012/11/23(金) 05:12:54.54ID:???
画像サーバーを別に設けてるんだけど
そこからDLさせるのってどうすればいいですか?

画像ファイルを保存する時に別のサーバーに保存してます
それをクリックでDL出来るようにしたいんだけど
send_fileだとローカルのファイルしかDLさせられない
でも、いちいち別サーバーからアプリケーションサーバーにDLしてから送信なんてのは非効率的すぎる
何かいい方法ありません?
0588nobodyさん2012/11/23(金) 10:51:09.36ID:???
link_to
0589nobodyさん2012/11/23(金) 11:07:23.15ID:bRXvxwC+
画像サーバはhttpしゃべれるの?
0590nobodyさん2012/11/23(金) 16:22:27.97ID:???
>>584
ありがとうございます。検討してみます。
0591nobodyさん2012/11/23(金) 19:03:06.62ID:???
>>588
それじゃあ普通のブラウザ内展開になっちゃいます

>>589
Nginxなのでヘッダーの付加なんかはできます
0592nobodyさん2012/11/23(金) 20:02:15.34ID:???
NFSでマウントさせときゃええやん
0593nobodyさん2012/11/23(金) 21:49:46.01ID:bRXvxwC+
>>591

Amazon S3とかじゃなく、自分で制御の効くサーバなら、
ダウンロードさせたい画像のリクエストに Content-Disposition ヘッダを
付けたらどうか。
0594nobodyさん2012/11/25(日) 04:28:42.51ID:???
mongoとmysqlを同時に使いたいんですが
モデルの作り方がよくわからず。。。

よろしくお願いします
0595nobodyさん2012/11/25(日) 07:20:42.47ID:s8Eu0FpF
教えて君と屑回答者
http://www.geocities.jp/stardust774/
0596nobodyさん2012/11/25(日) 11:22:08.51ID:???
>>594
まずは、モンゴたんとマイ・エスキュエルたんを自宅に迎えます。
その後、モデルへ育成させます。
< 恋愛育成ゲーム RoR 攻略法サイトより
0597nobodyさん2012/11/25(日) 23:24:21.12ID:???
>>596
がんばって、育ててみるわ
0598nobodyさん2012/11/27(火) 22:35:34.09ID:???
RubyかPHP 、どちらかしなければなりません。
どっちのが簡単ですか?
0599nobodyさん2012/11/27(火) 22:54:35.85ID:???
どっちも簡単
普通は両方覚える
0600nobodyさん2012/11/27(火) 23:00:41.83ID:???
phpは有力なミドルウェアが多いから、やりたいことがはまればphp
Wordpress,drupal,Mediawiki,xoops, open pneとかテーマとプラグインで楽できる
でも、コードを書くと汚くなりがち

いくつもたくさん開発して資産を蓄えていきたいとか、こまめに改修していきたいならRubyのほうが楽というか楽しい?というべきか
0601nobodyさん2012/11/28(水) 08:00:32.83ID:IhJ0H87A
しばらくは自己弁解モードでした。Rubyに変更しないための理由を作っていました。
一日経つと「Rubyが本当に好き」になり、一週間経つと「PHPには戻れない」状況になりました。
http://capsctrl.que.jp/kdmsnr/wiki/transl/?AnInterviewWithDHH

DHH:極端なことを言うと,Rubyが一番美しく自分のコードが書けるからです。
DHH:PHPとJavaです。でも,どんなにリファクタしても綺麗なコードが書けなかった。
http://gihyo.jp/dev/serial/01/alpha-geek/0004

404 Blog Not Found:そろそろPHPに関して一言いっとくか
http://b.hatena.ne.jp/entry/blog.livedoor.jp/dankogai/archives/50835571.html
http://b.hatena.ne.jp/entry/blog.livedoor.jp/dankogai/archives/50993137.html
0602nobodyさん2012/11/28(水) 08:07:06.13ID:IhJ0H87A
Ruby on Railsの作者で有名なDavid Heinemeier Hansson(通称DHH)氏がオーナーであるとのことです。
DHH氏は車にも精通しているのか,部品はパガーニ社が扱う最良のものを自らチョイスしたそうです。
もちろんオーダーメイドであるため現在のところ世界に1台しかありません。

ほぼ同スペックの「トリコローリ」というモデルが130万ユーロ(約1億4000万円)と言われている
http://gihyo.jp/dev/clip/01/orangenews/vol59/0008
0603nobodyさん2012/11/28(水) 08:14:36.22ID:???
>>602
こういうの見るとrails使いたくなくなる
0604nobodyさん2012/11/28(水) 08:14:45.17ID:IhJ0H87A
http://tabelog.com/

食べログの画面数は約200あるが,開発に取りかかって約2カ月で完成した。
「VBscriptならこの倍,PHPでも1.5倍はかかっていたのではないか」
コード量も10分の1になった。
http://itpro.nikkeibp.co.jp/article/OPINION/20071031/286028/
0605nobodyさん2012/11/28(水) 08:16:03.89ID:???
俺なら1画面1時間で造れるわ
0606nobodyさん2012/11/28(水) 08:16:26.21ID:IhJ0H87A
インタビュー:[楽天]Ruby活用事例とROMA,Fairy|gihyo.jp … 技術評論社
http://gihyo.jp/dev/column/01/prog/2010/030801?page=2
RailsとCakePHPを比べたところ,高負荷時にはRails のほうが大幅に応答性能が高いという結果が出たことですね。
これは200リクエスト/秒くらいからPHPの応答性能が急激に下がるのが原因です。
Rubyはそれほど大きくはパフォーマンスが落ちないんです。
0607nobodyさん2012/11/28(水) 08:17:49.41ID:???
どうせFpm使ってないんだろ
0608nobodyさん2012/11/28(水) 08:18:18.36ID:IhJ0H87A
第4回 Railsに変えてよかった!:iKnow!の場合 | Think IT
http://thinkit.co.jp/article/156/4?page=0,1
3ヶ月、わずか3名程度のエンジニアチームで、彼らはPHPで実装が完了していたレベルに追いつきました。
またコード量はPHPの1/5以下にまで削減されており、よりシンプルな構成も実現できました。
0609nobodyさん2012/11/28(水) 08:24:48.32ID:IhJ0H87A
リスト5 Javaのサンプル・プログラム
配列に格納した名前の中から,3文字以下のものを選んで出力するプログラムである。
http://itpro.nikkeibp.co.jp/article/COLUMN/20060315/232514/?SS=imgview&;FD=-1264950070&ST=ittrend

リスト6 Rubyのサンプル・プログラム
http://itpro.nikkeibp.co.jp/article/COLUMN/20060315/232514/?SS=imgview&;FD=-1264026549&ST=ittrend

http://itpro.nikkeibp.co.jp/article/COLUMN/20060315/232514/
0610nobodyさん2012/11/28(水) 08:27:30.47ID:IhJ0H87A
「コード1行につき10円」という取り決めがあったとする。
そしてプログラムの中に要素数1000からなる配列を初期化するルーチンが必要だったとする。
1万10円
40円
10円
http://blog.livedoor.jp/dankogai/archives/50766218.html
0611nobodyさん2012/11/28(水) 08:44:19.45ID:???
スタートアップ企業で8年間Webの開発をしてみての反省点いろいろ - Masatomo Nakano Blog
独自フレームワークはやめよう
http://b.hatena.ne.jp/entry/blog.madoro.org/mn/84
0612nobodyさん2012/11/28(水) 08:45:53.48ID:???
なんで古い記事ばっかり張るんだ?
0613nobodyさん2012/11/28(水) 08:48:22.01ID:???
コード1行10円とかそんなあほらしい事やってるとこないだろwww
0614nobodyさん2012/11/28(水) 09:45:24.02ID:???
一つのサーバーで複数のrails + unicornを動かすと管理がめんどくさくなっちゃうんだけど何かいい方法ないですか?

アプリA
アプリB
アプリC それぞれでbundle exec unicorn_rails
するとどれかを止めたり再起動したい時にpgrep -f 'unicorn_rails mater'ってやると3つでちゃってどれがどれかわからないです……
0615nobodyさん2012/11/28(水) 09:47:18.90ID:???
unicorn起動時に/tmp/hoge.sockというのが出来るのですがこれに直接再起動や停止命令をおくれたり出来ますか?
それであれば色々解決するのですが……
0616nobodyさん2012/11/28(水) 10:17:30.97ID:???
>>614
unicorn の config に pid を出力する設定がある
0617nobodyさん2012/11/28(水) 12:08:24.14ID:???
思い切って cloud foundry とか PaaS 自作とか
0618nobodyさん2012/11/29(木) 10:28:45.57ID:???
Unicornの管理ってアプリごとにserviceスクリプトに書けなかったっけ?
0619nobodyさん2012/11/30(金) 15:57:48.83ID:???
ブラウザにファイルを強制ダウンロードさせるContent-Type
http://qiita.com/items/325848fcf1e3dc6bd53a
0620nobodyさん2012/12/02(日) 02:55:59.68ID:sF7VWq7Y
すいません、エスパーさん助けてください・・・

<%= submit_tag "確定する", :confirm => 'OK?' %>
という単純なコードがなぜか思い通りに動きません。確認のポップアップが出ないのです。
HTMLになったソースを見ると、
<input type="submit" value="確定する" name="commit" data-confirm="OK?'>
とちゃんと変換されています。
javascriptも有効にしています。

原因としてどんなことが考えられるでしょうか。
0621nobodyさん2012/12/02(日) 15:06:54.92ID:1JWssV6U
くだらねえ
0622nobodyさん2012/12/02(日) 19:07:03.20ID:???
バージョンは?rails.js読み込んでないんじゃない
0623nobodyさん2012/12/02(日) 22:36:14.29ID:???
ブラウザのコンソールを開いてJavascriptのエラーが出てないか、404って出てないかをチェック
404は黒字だから目立たないぜ

jqueryとjquery ujsをロードしてるか

あとJavascriptを使ってるgemが悪さしてないか

Twitter Bootstrap rails のレイアウトとかはJavascriptを後ろでロードするからいろんな不具合でやすい
0624nobodyさん2012/12/04(火) 06:46:49.92ID:???
rails consoleからrakeタスクを実行することってできませんか?
できればrakeのenvironmentがrails consoleと同一(環境をロードしない)
になると嬉しいのですが。
0625nobodyさん2012/12/04(火) 12:42:31.82ID:X5tWvJbJ
>>624

>> require 'rake'
>> MyApp::Application.load_tasks
>> Rake.application['db:migrate'].invoke

ここまでは出来た。
0626nobodyさん2012/12/04(火) 12:52:59.34ID:???
日付変更と同時にユーザーの持っている数値を一括で0にしたいのですがふつうにやると

User.find_each do |u|
u.point = 0
u.save
end

こうなると思いますが数万件あるのでとても非効率的な気がします
なにか一括で更新する方法は選りますか?mysqlを使っています
0627nobodyさん2012/12/04(火) 13:02:20.50ID:???
あ、mysql上であれば
UPDATE users SET point = 0
でいいのてすか、これをRailsこら呼ぶ方法がわかりません
0628nobodyさん2012/12/04(火) 13:33:28.69ID:X5tWvJbJ
>>626

update_all

>>627

AR::Base.connection.execute
0629nobodyさん2012/12/04(火) 22:39:05.75ID:???
>>624
ありがとうございます。Rakefileに 
def rake(taskname)
Rake.application[taskname].invoke
Rake.application[taskname].reenable
end
と書いてconsoleからロードしたら良い感じになりました。
tasknameをクォートしないといけないのが面倒ですが・・・
0630nobodyさん2012/12/05(水) 20:34:52.02ID:???
Rails3.1を使っています。
Ajaxを使いページの更新をせずに更新情報だけを特定箇所に反映させ表示させたいです。
(Twitterと同じようにFollowボタンをクリックで→Un-Followに。Un-Followをクリックで→Followに)
次レスに書いたコードを貼り付けます。このようにコードを書き試しましたがエラーが返ってきます。
おそらく set_follow.js.erb に問題があるのかと思いますが。。
エスパーさん、どうかお願いします。
0631>>630の続き2012/12/05(水) 20:35:39.96ID:???
-----「users_controller.rb」-----
 def set_follow
  friend = User.find_by_username(params[:username])
  if f = Friendship.find(:first, :conditions => { :user_id => current_user.id, :friend_id => friend.id})
   f.destroy
   flash[:notice] = "Now added to follow list"
   respond_to do |format|
    format.html { redirect_to set_follow }
    format.js
   end
   #redirect_to :back
  else
   Friendship.create(:user_id => current_user.id, :friend_id => friend.id)
   flash[:error] = "Now deleted from follow list"
   respond_to do |format|
    format.html { redirect_to set_follow }
    format.js
   end
   #redirect_to :back
  end
 end

-----「users/index.html.erb」-----
   <div id="follow_status">
   <% if user_signed_in? && current_user.friends.find_by_id(user.id) %>
    <%= link_to sanitize('<i class="icon-remove icon-white"></i> ') + 'Un-Follow', follow_user_path(user.username), :class => 'btn', remote: true %>
   <% elsif current_user != user %>
    <%= link_to sanitize('<i class="icon-ok icon-white"></i> ') + 'Follow', follow_user_path(user.username), :class => 'btn btn-primary', remote: true %>
   <% end %>
   </div>
0632>>631の続き2012/12/05(水) 20:36:14.48ID:???
-----「set_follow.js.erb」-----
$("#follow_status").html("<%= escape_javascript(render f) %>");
0633>>632の続き2012/12/05(水) 20:39:04.17ID:???
長々となってしまいました。
ちなみにajaxの記載を外すと、ロード(更新)こそはするもののFollow←→Un-Followで 
きちんとフラグに応じて表示が切り替わります。
ページロード無しでの表示の更新を実現したいです。
0634nobodyさん2012/12/05(水) 21:46:24.03ID:???
fがviewに渡ってない
0635nobodyさん2012/12/06(木) 05:20:52.55ID:???
"Entry"というモデル名をさける
http://www.ustream.tv/recorded/25419544

Enumerable#entries
http://ruby-doc.org/core-1.9.3/Enumerable.html
0636nobodyさん2012/12/06(木) 09:40:34.41ID:???
>>630
エラーが帰ってくるならその内容見て問題点を把握すれば良いのでは?
0637nobodyさん2012/12/06(木) 13:24:17.88ID:???
>>634
レスありがとうございます
この場合、どのようにすれば回避できますでしょうか?


>>636
すみません。語弊がありました。
エラーが返ってくるのではなく、
Followをクリックしても表示が切り替わらない(つまり、何も動かない。変化しない)というのが正しいです。
0638nobodyさん2012/12/06(木) 21:01:18.32ID:11RbrkAb
よく見てないけど、コントローラーのインスタンス変数(@f)にすれば
ビューにコピーされるので使えるよ。
0639nobodyさん2012/12/06(木) 21:38:34.37ID:???
>>638
ありがとうございます。試してみます。
やり方としては上に書いたような方法で問題ないですよね?
0640nobodyさん2012/12/07(金) 00:10:01.78ID:8cSZfdva
Ruby on Rails 3 の Ajax いろいろ
http://d.hatena.ne.jp/yuum3/20120903/1346653974
0641nobodyさん2012/12/07(金) 00:58:57.62ID:???
>>637
Followクリックした時のサーバーのログとブラウザのログ見てみれば分かる
0642nobodyさん2012/12/07(金) 01:27:48.74ID:???
>>641
サーバーのログは見るようにしていますが
ブラウザのログってあるんですか???
0643nobodyさん2012/12/07(金) 01:57:13.40ID:???
>>638
さっそく試させていただきました。

>>631のコントローラーをf→@fに変更
>>632のjs.erbでrender f→render@fに変更


その結果、ブラウザ上でFollowを押してもUn-Followへは表示が切り替わらず
Followのまんまです。
もちろん、ページ更新は発生しません。


その直後にページ更新を手動でかけると表示がUn-Followになっています。
つまり、フラグの切り替えだけは裏で正常に行われているようです。
表示の切り替え部分だけがうまく反映されていないようです。

色々と調べてみたのですが、これというものが見つかりません。
(表示されてる内容をajaxの動きで変更するという事例があまり無いです。
空白のところにajaxの動きで何かを追加表示させる事例はたくさんありました)
0644nobodyさん2012/12/07(金) 02:12:18.84ID:???
もしくは

views/ajax/_follow.html.erb

views/ajax/_unfollow.html.erb
を用意しておいて

それぞれにボタンを含めた部分的なviewコードを書いておいて

それらに対になるように
views/ajax/set_follow.js.erb
views/ajax/set_unfollow.js.erb
のそれぞれから呼び出すようにしておくべきですか?

コントローラーから現在のfollowステータスに応じて、
どちらかのjs.erbを呼び出し
index.html.erbに表示してあげるといったかんじです。

こういった切り分けたやり方のほうが一般的でしょうか?
その分ファイルが増えるので、ややこしくなりますが。。
0645nobodyさん2012/12/07(金) 03:56:24.82ID:8cSZfdva
pjaxが便利過ぎて鼻血出そうになった(railsのサンプル付き)
http://yuku-tech.hatenablog.com/entry/20110823/1314111340

http://pjax.heroku.com/
0646nobodyさん2012/12/07(金) 05:01:54.20ID:???
もしかして。。。ですが。。。
Ajax、JQuery(AssetPipeLine)って
Development modeでは動かなかったりしますか?。。。。

一日試行錯誤してacts_as_followerとかも
事例をコピペでそのまんま試しましたが、
やはりページ更新なしでボタンの表示が変わりませんでした。。

なので、もっと根本的なところに問題があるのかもしれません。
0647nobodyさん2012/12/07(金) 05:17:02.50ID:???
>>642
chrome や opera なら右クリして要素を検証ってやつだよ。
firefox は firebug とかいうやつ。
js にエラーがあるならそこのコンソールってとこに表示される。
0648nobodyさん2012/12/07(金) 05:56:59.52ID:???
>>644 view で @f の値で分岐すれば良いんじゃないかな。
set_follow.js.erb を
<% if @f %>
$("#follow_status").html("こんにちわ");
<% else %>
$("#follow_status").html("さようなら");
<% end %>
に変えたら変更されない?
0649nobodyさん2012/12/07(金) 07:22:00.35ID:???
>>648
おはようございます。
朝早くからレスありがとうございます。

そちらも試させていただきましたが反応なしです。

試しにJQueryのfadeOut(画像が徐々にフェードアウトしていく機能)
を直でshow.html.erbに記述して表示させましたが、
それすら動かない様子です。

どうやらJQuery自体がまともに読み込まれて動いていないのかもしれません。

現在Rails3.1にgemでjquery-railsやjquery-ui-railsを入れています。
色々と試してはいるのですが心当たりが見あたりません。
0650nobodyさん2012/12/07(金) 11:22:15.28ID:???
>>649
ブラウザでアクセスしてhtmlのソース見てjsへのリンクがあるか確認してみたら?
Railsとか以前の問題だわw
0651nobodyさん2012/12/07(金) 11:37:05.67ID:???
follow_user_pathってなに
0652nobodyさん2012/12/07(金) 12:04:25.90ID:???
俺もRails3でAjax使おうと思って最初はまった素人なんだが
jquery_ujs.jsを読んでAjaxの動作を把握するのが一番だと思うわ

これアドバイスしてる奴は誰もソースちゃんと読んでないだろ(俺含め
06532012/12/07(金) 12:20:23.99ID:???
Railsのhメソッド、uメソッド、jメソッドはどのように使い分ければ良いでしょうか? - QA@IT
http://qa.atmarkit.co.jp/q/2438
0654nobodyさん2012/12/07(金) 17:55:34.73ID:nbhQU3dc
kaminariを使ってるんですけど、最後のページを取得するってできますか?

list = Item.order("id DESC").page(params[:page])
list.reverse!
で一応最後から順に取得できますが、ページ数が1となってしまいます
ページ数がlastから始まるようにすることっできますか?
0655nobodyさん2012/12/07(金) 20:10:29.41ID:???
num_pages
https://github.com/amatsuda/kaminari/wiki/Kaminari-recipes
0656nobodyさん2012/12/08(土) 05:18:46.92ID:SvWzDcWm
SQLで昇順、降順を表すASC,DESCの言葉の由来 - SQL Server - 教えて!goo
http://oshiete.goo.ne.jp/qa/3839467.html
0657nobodyさん2012/12/09(日) 02:25:39.24ID:???
オススメのブログgemってありますか?
一般的なブログみたいに

右にArchiveってメニューを設けて

そこには

2012年11月(3)
2012年10月(14)
2012年9月(30)

みたいなリンクを表示させてて、11月をクリックしたら

testhoge.com/blog?archive=201211
に飛んで11月の3件が表示される
といった類の

この程度ならコードを1から自分で書くべきですか?
それとも何かgemはありますか?
0658nobodyさん2012/12/09(日) 02:36:35.22ID:???
ちなみにブログを作るとしたらURLは

その@
testhoge.com/user/1637/blog/new
↓投稿
testhoge.com/user/1637/blog/26448 がshow
 
そのA
testhoge.com/blog/new
↓投稿
testhoge.com/blog/26448


どちらのルーティングが一般的ですか?
0659nobodyさん2012/12/09(日) 05:28:27.67ID:36Xf50eu
ブログ
http://dir.yahoo.co.jp/Computers_and_Internet/Internet/World_Wide_Web/Weblogs/?frc=dsrp_jp0011
0660nobodyさん2012/12/09(日) 05:30:41.09ID:36Xf50eu
blog
https://www.ruby-toolbox.com/categories/Blog_Engines
0661nobodyさん2012/12/09(日) 08:14:37.54ID:???
>>660
一通り見ましたが
どれもそのブログ単体でアプリとして稼働するような大型ばかりでした。
私が探しているのは、アーカイブメニューと必要最低限の投稿関連機能のみを追求したものになります。
0662nobodyさん2012/12/09(日) 10:26:37.33ID:36Xf50eu
hp12c - Railsでブログを作ろう!(Creating a Weblog in 15 minutes)
http://d.hatena.ne.jp/keyesberry/20070614/p1

calendar_helperを使ってみる - kurusaki note  
http://d.hatena.ne.jp/kurusaki/20080908/1220807600
0663nobodyさん2012/12/09(日) 14:45:26.74ID:???
それくらいなら作れば?
紹介してもらったのから機能抜いてもいいし。

探したり、探してもらったり、書き込みを待つ手間もかからん。
0664nobodyさん2012/12/10(月) 22:50:15.38ID:???
rails勉強中です、質問させてください。
5000個くらいある商品を季節毎に入れ替えするために
csvファイルをアップロードしてcsvによりテーブルの中身を
総入れ替えするボタンを作りました。
ここでふと気になったのですが
テーブルの中身を一括で入れ替える方法は僕が実装した方法の他にも
シードデータを使った方法など様々な方法があると思いますが
稼働中のアプリケーションにおいてcsvファイルをつかったテーブルの更新
というのはrailsのアプリケーションとして一般的な方法なのでしょうか?
残念ながら入門書を読んでもwebをさがしても疑問は解決しませんでした。
皆さんはこの場合どういう方法を使っていますか?
0665nobodyさん2012/12/10(月) 22:52:49.29ID:???
別に問題無いと思う
今も昔もインポート・エクスポートは csv が無難だと思うよ
06662012/12/11(火) 02:20:37.65ID:wspFP5Jy
MySQLでCSVを入出力(インポート・エクスポート)するコマンド
http://blog.layer8.sh/ja/2011/12/23/mysqlでcsvを入出力インポート・エクスポートするコマ/
0667nobodyさん2012/12/11(火) 05:14:33.55ID:???
質問です

VPS上にてサービスを公開予定しています

今後もし新機能の追加アップデートをしたい場合
どのような手法で行うのが一般的ですか?

考えているのは
ユーザーがサービスを利用していても
直接プログラム部分をいじったり
SSHからのコマンドで構築していくことを考えていますがエラーが出る度に
ユーザーからしたらいい迷惑ですよね?
それだと、とんでもない事故も起こりうるかもしれません

一番いいのはテスト環境を作ることなんでしょうが
railsの場合、1からの鯖構築になるので
vps鯖(centOS)に手を入れてきた今の状態と同一の環境を作るのは困難です。

railsアプリは基本アプリフォルダ以下すべてをそのままコピペして
rake db:migrate さえすれば動くべき!

動かない場合はbundle installさえすれば必ず動く!という認識でいいでしょうか?
06682012/12/11(火) 05:36:34.42ID:wspFP5Jy
Rails Hub情報局: 素人がWebサービスを作ってみて分かった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

PuppetChef
http://jp.rubyist.net/magazine/?0035-ChefInDECOLOG

chef-soloを使ってサーバ設定を自動化して楽をしよう! 〜chef-soloの使い方〜:ADWAYS ENGINEERS BLOG
http://blog.engineer.adways.net/archives/17808773.html
06692012/12/11(火) 05:44:56.38ID:wspFP5Jy
http://www.heroku.com/
http://www.engineyard.co.jp/
http://sqale.jp/
http://mogok.jp/
http://c4sa.nifty.com/
http://aws.typepad.com/aws_japan/2012/11/aws-elastic-beanstalk-ruby-support-and-vpc-integration.html

http://wiki.opscode.com/display/chef/Home
06702012/12/11(火) 05:47:46.48ID:wspFP5Jy
マスタ/スレーブの冗長化の基本は4台1セット
http://d.hatena.ne.jp/uncafe/20110919

データベースのレプリケーション(複製)では、slaveに最低3台のサーバを適用している。
http://jibun.atmarkit.co.jp/ad/comp/112mitsu/01.html

MySQLをmaster:slave=1:1構成にして参照をslaveに向けるのがなぜ良くないか - 酒日記 はてな支店
http://d.hatena.ne.jp/sfujiwara/20110620/1308531677

MySQLで参照の負荷分散を行うslaveは3台から構成するのがよいのでは - 酒日記 はてな支店
http://d.hatena.ne.jp/sfujiwara/20110621/1308625519
06712012/12/11(火) 06:16:02.85ID:wspFP5Jy
Linuxでは以下の点には十分注意されたし。

(1)メールの第三者中継
(2)sshのポートは変えておけ
(3)認証系は必ず暗号化
(4)rootは使わない
(5)MD5
(6)DNSに登録する場合のデメリット
http://w033.seesaa.net/article/192818575.html
06722012/12/11(火) 06:52:18.29ID:wspFP5Jy
ウェブ開発者のための、1時間でできるLAMP環境構築術(CentOS編) - さくらインターネット創業日記
http://tanaka.sakura.ad.jp/2011/05/centos-linux-apache-php-perl-mysql-lamp.html

GMOクラウド VPS セキュリティー対策のお願い|
http://support.gmocloud.com/vps/guide/security/
0673nobodyさん2012/12/11(火) 12:40:53.87ID:???
>>667
んなもんgemによっては追加の設定が必要なものもあるし、一概にこう、と言える
完璧な答えなんてないわな

動作環境構築手順をきっちりまとめておくというのはRailsに限らず、サーバ構築
の基本中の基本だ
文書としてまとめておいてもいいし、シェルスクリプトにしてもいいし、capstrano
みたいなのを使ってもよかろう
0674nobodyさん2012/12/11(火) 16:22:35.12ID:???
post = Post.find_by_topic(params[:id])

if post.comment_user.id == current_user.id
 処理1
else
 処理2
end

としたとき、仮にpostで該当するものがなかったとして完全にnilだった場合
nilエラーを回避して処理に進めるには、
どのように書くのがスマートですか?
0675nobodyさん2012/12/11(火) 20:01:49.38ID:???
if post
 if post.comment_user.id == current_user.id
  処理1
 else
  処理2
 end
end

シンプルイズベスト

あと関係ない部分だけど、俺なら Post#comment_user_is? を作って、
 if post.comment_user_is?(current_user)
とかするかも
コントローラでモデルのフィールドにアクセスするのは気持ち悪いから
0676nobodyさん2012/12/11(火) 20:36:24.86ID:???
質問も回答もひどいコードだ…
0677nobodyさん2012/12/11(火) 21:56:21.73ID:UJ9Con7b
>>676がお手本を見せてくれると聞いて。
0678nobodyさん2012/12/11(火) 21:59:37.37ID:???
677じゃないけど普通に
if post || post.owner_user?(current_user)
else
end

でいいんじゃないの
0679nobodyさん2012/12/11(火) 22:14:55.92ID:???
>>678
それだとpostがnilのときに処理2に入ってしまう
0680nobodyさん2012/12/11(火) 22:32:08.35ID:???
>>678
|| じゃなくて && じゃねーの?
0681nobodyさん2012/12/11(火) 22:41:40.40ID:???
post が nil の時に処理2になるとは書いてないよな
■ このスレッドは過去ログ倉庫に格納されています