【RoR】Ruby on Rails Part13

このエントリーをはてなブックマークに追加
1nobodyさん
2nobodyさん:2011/11/04(金) 17:11:44.83 ID:???
関連スレ

Ruby 初心者スレッド Part 46
http://hibari.2ch.net/test/read.cgi/tech/1317790320/

Rubyについて(アンチ専用) Part004
http://hibari.2ch.net/test/read.cgi/tech/1249737531/

Rubyについて Part 45
http://hibari.2ch.net/test/read.cgi/tech/1317639700/

[PHP][フレームワーク]CodeIgniter Part2
http://hibari.2ch.net/test/read.cgi/php/1299595202/

Zend Framework Part5
http://hibari.2ch.net/test/read.cgi/php/1297364669/

3nobodyさん:2011/11/04(金) 17:11:58.02 ID:???
ふう・・・
4nobodyさん:2011/11/04(金) 17:14:18.67 ID:???
るりまサーチ (リファレンス検索)
http://rurema.clear-code.com/

Rubyist Magazine - るびま
http://jp.rubyist.net/magazine/

逆引きRuby
http://www.namaraii.com/rubytips/
5nobodyさん:2011/11/04(金) 20:02:26.80 ID:???
乙かれちゃーん
6nobodyさん:2011/11/04(金) 20:25:48.98 ID:???



           皆様へのお願い

  このスレッドは高次機能障害をもたらす
病理の臨床実験のために立てたものです。

  被験者と研究員のやり取りに使うため、
書き込み等は自重されるようお願いいたします。
もし、書き込み等をすることで不愉快な思いをされましても、
当研究所は責を負いかねます。



                      (社)京都微生物研究所


7nobodyさん:2011/11/05(土) 00:01:44.07 ID:???
Ruby on Railsはやっぱいろいろなものの詰め合わせだから、どっかしらバージョン違いが起こっちゃって初心者には辛いっす・・・
8nobodyさん:2011/11/05(土) 00:04:40.89 ID:???
>>7
そんなあなたにrvm
9nobodyさん:2011/11/05(土) 08:02:01.02 ID:???
>>7
そんなあなたにbundler
10nobodyさん:2011/11/05(土) 10:47:38.76 ID:???
form_forのヘルパーでモデルを更新した後、再び同じページに戻ってくると
form_forの中に更新前のデータが記録されています。
キャッシュだとおもうんですが、簡単にフォーム内に残されたデータを
消す方法ってありますか?
よろしくお願いします。
11nobodyさん:2011/11/05(土) 12:35:05.83 ID:???
ブラウザの挙動もあるので、どの環境でもきちんと消すのは少し面倒かも。ワンタイムトークン発行したりとか。

簡単な方法だと履歴を消すという手はあるが。
12nobodyさん:2011/11/05(土) 12:56:26.67 ID:???
>>11
例として、このレスの下のフォームで書き込むボタンを押した後、このページに
自動的に遷移してくると、書き込む前の内容が残されてる感じです。
だから、間違って書き込むを連打すると、validationが働かず、同じような
ものが何度でも連続して作られてしまう感じです。

うーん、なんとかならないのか・・・
expire_pageとかあるみたいだけど、よくわかんないです。
13nobodyさん:2011/11/05(土) 13:09:16.49 ID:???
「自動的に遷移してくると」というのが不明。
自分でそう書かない限り、そうならないので。
14nobodyさん:2011/11/05(土) 13:15:44.94 ID:???
Validationが働かないのは、単にバグってるだけ
15nobodyさん:2011/11/05(土) 14:20:07.01 ID:bMCYQ4Ak
rails3からrails Plug-inはgem化推奨だそうなので
移動させようと作業しているのですが
gemの中のrakeタスクを認識させる方法がわかりません
どなたかヒントを頂ければ幸いです
16nobodyさん:2011/11/05(土) 14:34:57.70 ID:???
>>13
単にcreateのメソッドを使った後、もとのページにrender で指定しているだけです。
つまりform_forのアクションがcreate
def create
処理
 render :action=> 'list'
end
って感じ
listはform_forのヘルパーがあったページ

>>14
働いてます
17nobodyさん:2011/11/05(土) 15:25:51.51 ID:???
>>16
form_for の第一引数に指定しているオブジェクトに値が入ってるからでしょ
値を表示させたくないなら、そのオブジェクトを破棄して新しく new するとか
18nobodyさん:2011/11/05(土) 15:37:57.57 ID:???
createでlistをrenderするのが間違ってる。
リロードしなきゃいけないし。
リダイレクトするのが普通かな。

もしくはそのままの実装でどうしても行くなら、saveの後で
@data = Data.new
すれば良い
19nobodyさん:2011/11/05(土) 15:40:35.03 ID:???
リロードしないとするとcreateの中でまたfindしてるのかな?
なんか不毛すぎるし、Railsっぽくないな。
20nobodyさん:2011/11/05(土) 17:01:26.43 ID:???
>>17
form_forにのフィールドの初期値を空白にすることによりcreateされて戻ってくる
ときに更新前の値が反映されなくなりました。newするのも考えましたが、非効率な感じがしたので。
取り合えす、できましたのでありがとうございます。


>>18
あ、redirectでも同じですよ。ちなみにscaffoldをつかってません。

>>19
createの中でロードも試しましたね。そしてrender
初めは単にredirectだったんですけ、どちらも結果がおなじでした。

21nobodyさん:2011/11/05(土) 17:05:20.96 ID:???
redirectで同じって、そんなわけねーだろw
2210:2011/11/05(土) 17:12:07.37 ID:???
>>21
じゃあ、下のフォームと同じものを作ってdbで更新した後、redirectかrenderで
戻ってきてください。僕の言ってることが分かると思いますよ。
23nobodyさん:2011/11/05(土) 18:02:49.58 ID:???
再現性のあるソースの最小構成みせてみてよ。
案外ここは問題ないって思ってるとこが問題だったりするから
再現する状態の全てを見せたほうが話がはやいよ。
24nobodyさん:2011/11/05(土) 18:09:44.28 ID:bdmivVUP
>>15

http://api.rubyonrails.org/classes/Rails/Railtie.html
Loading rake tasks and generators

MyPlugin::Railtie というクラスを定義して、rake_tasks メソッドを使う。

# れいるてぃー、じゃなくて、れいるたい、ね。
25nobodyさん:2011/11/05(土) 22:25:53.66 ID:???
>>20
> form_forにのフィールドの初期値を空白にすることにより
この方法だともう一回submitされたときにcreateじゃなくてupdateが呼ばれるはずだが…
まぁ動いてるならいいのか
26nobodyさん:2011/11/06(日) 02:04:49.32 ID:???
【MSCB MSSO】会社死期報 part 25【粉飾決算】
http://hato.2ch.net/test/read.cgi/venture/1305511296/
27nobodyさん:2011/11/06(日) 12:56:50.64 ID:70F4kdqb
2815:2011/11/06(日) 17:00:30.46 ID:GUoZmNqn
>>24
ども!情報有り難うございます
1日試行錯誤した結果なんとか動かせるようになりました
29nobodyさん:2011/11/07(月) 00:24:53.97 ID:???
どうしてもfixtureがうまくいかない
郵便番号のデータ12万件くらいなんだけど、mystringという文字列がはいったデータが2件だけできるだけ

環境はruby1.8.7 rails2.3.14 ubuntu11.04です
データベースはsqlite,mysqlで試したけど同じでした
30nobodyさん:2011/11/07(月) 00:30:43.70 ID:???
そんなんで分かるわけないだろ
31nobodyさん:2011/11/07(月) 00:55:17.92 ID:???
>>30
すいません
聞き方を変えると、日本語のテキストデータをMyStringsに変えてるのはどこなんでしょうか
たぶんencoding関係なのかなと思ってるんですがどのあたりをみたらいいか検討がついたら教えてください
32nobodyさん:2011/11/07(月) 01:07:48.16 ID:???
MyStringsって何よ
33nobodyさん:2011/11/07(月) 01:24:12.45 ID:???
よく考えろ

本当にRailsが自分が入れた(と思ってる)文字データを、
勝手にMyStringsという文字列に変換してるのだろうかと。
もしかしてそれは、自分がやった何かがおかしいんじゃないかと。

自分がやった何かがおかしいなら、
その何かを示さないと、
全く関係のないほかの人には分からないんじゃないかと。
34nobodyさん:2011/11/07(月) 08:04:30.46 ID:???
そういえばfixtureって数年使ってないな
35nobodyさん:2011/11/07(月) 09:48:31.15 ID:???
ruby on rails を勉強したいんですけど
どこかよいチュートリアルサイトないですか。
できればウィンドウズでやりたいです。
36nobodyさん:2011/11/07(月) 09:54:12.97 ID:???
Four Days on Rails は対応バージョンが古すぎるかな。
37nobodyさん:2011/11/07(月) 09:56:22.27 ID:???
http://www.rubylife.jp/rails/
を見ることにしました。
38nobodyさん:2011/11/07(月) 10:27:20.80 ID:???
>>37
そのサイト、全然記事ないやん…。何もできんぞそれじゃ
39nobodyさん:2011/11/07(月) 11:06:35.57 ID:???
ヒント:アフィ
40nobodyさん:2011/11/07(月) 11:08:37.00 ID:???
それ明らかにアフィリ・広告・SEOのためのサイトじゃんかよ

そういう記事を○○円で書く仕事みたいのよく募集してるよ

質問者が運営者だろ。さりげなくURLを貼ったつもりだろうけど
41nobodyさん:2011/11/07(月) 11:20:31.53 ID:???
暗号化されたパスワードを含むオブジェクトを
CookieStoreに保存しても平気でしょうか?
session[:user] = User.find(1)
それともユーザー名やIDのみ保存すべきでしょうか?
session[:name] = User.find(1).name
42nobodyさん:2011/11/07(月) 11:24:28.96 ID:???
ユーザ名だけにしておきなさい
43nobodyさん:2011/11/07(月) 12:03:38.46 ID:???
なんでそんなの入れたいん?
キャッシュしたいという事かな。
オブジェクト入れるのはやめときな。

Railsってあまりクッキー使わないよね。
44nobodyさん:2011/11/07(月) 12:29:00.48 ID:???
ユーザ管理する程でもないサイトでリスト中の更新部分をハイライトしたくて
前回表示日時をクッキーに入れたりしたことはあるな。
45nobodyさん:2011/11/07(月) 12:38:37.39 ID:???
このスレは前スレのブックマーク投稿クソ野郎などウェブ系スパム業者に狙われています
46nobodyさん:2011/11/07(月) 12:49:53.59 ID:???
cookie使用の有無は、rails関係ないだろ
47nobodyさん:2011/11/07(月) 13:30:26.20 ID:???
Railsに限らずクッキーに情報本体入れる実装は総じて糞って結論がでてると思うんだが。
48nobodyさん:2011/11/07(月) 14:38:22.93 ID:???
railsでもcookie_storeをactiverecordにすれば
cookieにセッションIDだけ入ってセッション情報はDBに入るだろ
49nobodyさん:2011/11/07(月) 16:20:14.66 ID:???
ふつーはそうする
どういうことか分からないままデフォルトで運用する奴はうんこちんちん
50nobodyさん:2011/11/07(月) 17:38:13.27 ID:???
データが量的に入るならいいと思うんだが
暗号鍵は十分長いからサーバーがクラッキングされない限り復号はできないだろ
DBにアクセスするより軽いし
普通は入らないが
51nobodyさん:2011/11/07(月) 18:06:27.59 ID:???
productionではmemcachedに入れてる。
その他はdb storeで。

52nobodyさん:2011/11/07(月) 18:32:25.52 ID:???
そのうちHTML5のWebStorageだかなんかを使った実装も用意されるようになるんだろな。
53nobodyさん:2011/11/07(月) 20:24:06.72 ID:???
gmailってwebstrageを使ってるよね。
54nobodyさん:2011/11/07(月) 20:38:24.97 ID:???
gmailはrails使ってないがな
55nobodyさん:2011/11/07(月) 21:30:33.88 ID:yd1Vl5Rt
Rails Zombie だっけ? 2が出るとか見かけたんだが。
56nobodyさん:2011/11/07(月) 22:49:12.20 ID:???
railsのインストールがうまくいかないまくりなんだけどみんなスムーズに導入できてるの?

gem install railsってすると cannot load such file -- zlibって怒られるし、
じゃあ~/.rvm/src/ruby-1.9.3-p0/ext/zlibまで潜ってruby extconf.rb実行すると
checking for deflateReset() in -lz... no
checking for deflateReset() in -llibz... no
checking for deflateReset() in -lzlib1... no
checking for deflateReset() in -lzlib... no
checking for deflateReset() in -lzdll... no
こんな風に5回連続で怒る。
mkmf.logっていうファイルが更新されているんで、見てみるけど
「‘deflateReset’ が宣言されていません 」とか書いてるだけ。何者よこれ
57nobodyさん:2011/11/07(月) 22:56:00.69 ID:???
普通に zlib がねえっていってんじゃん。
パッケージマネージャとか何つかってるのかわからんけど
zlib インストールしろよ。
58nobodyさん:2011/11/08(火) 00:41:35.66 ID:???
「さくらのクラウド」料金が発表。「Amazon EC2の半額」は実現できたか? − Publickey
http://www.publickey1.jp/blog/11/amazon_ec2_2.html
59nobodyさん:2011/11/08(火) 01:53:53.54 ID:???
SDのinterviewでpresidentが言ってたがawsにalmost all of clientsを持っていかれたそうな
60nobodyさん:2011/11/08(火) 03:53:41.69 ID:???
>>57
それぐらい読んでほしいよね。最低限の英語できないと
厳しい
61nobodyさん:2011/11/08(火) 07:07:34.93 ID:???
>>57
ああ、zlib.hがないんだろうと思って、$HOME/src/zlib-1.2.5に展開してはいるんだよ。
どうやって読み込ませるんだろうねこれ。

ちなみにパッケージ管理はaptitudeを使ってるんだけど、これにzlibなんてパッケージはなさそうだな。
62nobodyさん:2011/11/08(火) 07:50:49.04 ID:???
ちなみにextconf.rbを1行ずつ実行して様子見てみると、
最初の「require 'rbconfig'」でfalseが返ってた。これって標準添付のライブラリじゃないの?
gem install rbconfig実行しようにも、やっぱりzlibがないから使えないし・・・
63nobodyさん:2011/11/08(火) 08:00:43.75 ID:???
そんなとこにソースだけ置いても見えるわけないだろ
64nobodyさん:2011/11/08(火) 08:06:00.83 ID:???
>>62
apt-get install libzlib-dev
だろ
65nobodyさん:2011/11/08(火) 08:08:40.70 ID:???
まちがいました
ubuntuだとlibz-devかzlib1g-dev
66nobodyさん:2011/11/08(火) 08:29:51.14 ID:TcZAbBs1
aptitudeなら / (Find) をタイプしてから zlib を指定すればすぐ出てくると思うけど…
67nobodyさん:2011/11/08(火) 10:27:47.89 ID:???
なんか全体的に謙虚さがたりない感が見て取れるな。
68nobodyさん:2011/11/08(火) 11:33:36.88 ID:???
相手は人間なんだから、言葉づかいだって大事だよな。
69nobodyさん:2011/11/08(火) 12:06:22.51 ID:???
ここはLinux入門者スレ?
70nobodyさん:2011/11/08(火) 13:00:36.22 ID:???
railsは入れるの結構うざいからなそこら辺も敷居を上げてる。
入れてからもruby知らなきゃ無理だしな。
とりあえず、scaffoldから説明するwebやsiteは糞
71nobodyさん:2011/11/08(火) 13:03:25.25 ID:???
パッケージマネージャでのインストールばかりだと新しいrubyがリポジトリになくて詰んだりするね。
7241:2011/11/08(火) 13:43:43.59 ID:???
みなさんご助言ありがとうございました。
session[:user].name とか書きたかっただけで深い理由はありません。
ユーザー名だけ入れておく事にします。
73nobodyさん:2011/11/08(火) 14:00:40.10 ID:???
webやsite w

webの情報なんてほとんど善意のボランティア的なものなんだから、きちんと学びたければ本買えよ。

railsのサイトでrubyの情報も掲載するより、rubyはrubyのサイトに行ってもらった方がやること重複しなくていいだろ。
技術系のエントリ書くの結構大変なんだぞ。

あと scaffoldは基本を抑えるのに必要。最初は生成されたコードを読んどいた方が良い。
実務ではあまり使わないが。
74nobodyさん:2011/11/08(火) 14:03:54.96 ID:???
lib ディレクトリの使い方で質問なんですが、
一部のモデルでしか使わないような、Web API の結果をちょこっと入れておくだけのクラスとかなんかも
lib ディレクトリに入れるのが作法なんでしょうか?
75nobodyさん:2011/11/08(火) 14:07:25.90 ID:???
実務って言っても14時に2チャンネルってw
ニートの癖にwwww
おれ?
学生ニート
76nobodyさん:2011/11/08(火) 14:10:38.42 ID:???
>>73
>rubyはrubyのサイトに行ってもらった方がやること重複しなくていいだろ
日本語から勉強したら?w
77nobodyさん:2011/11/08(火) 14:15:12.98 ID:???
ここのスレってwebprog板で一番
根性の曲がり腐った性格の連中ばかりだな

rails使い=こんな奴らばかりなん?
他のfwスレはほのぼのしてて羨ましい。ここは殺伐しすぎ。
78nobodyさん:2011/11/08(火) 14:20:16.53 ID:???
道理で当たり前の言葉遣いすらできないわけだ
79nobodyさん:2011/11/08(火) 14:20:57.87 ID:???
>>78>>75に対して
80nobodyさん:2011/11/08(火) 14:22:41.26 ID:???
IDないと煽るの楽でいいな。
81nobodyさん:2011/11/08(火) 14:37:34.97 ID:???
社会人は会社員しかいないと思ってる子供は多いからな。
震災以降リモートの仕事増えたのは良い事だと思う。sshの鍵あればどこでも仕事できるし。

82nobodyさん:2011/11/08(火) 14:42:53.51 ID:???
そういう負け惜しみじみた自己紹介はいらない
83nobodyさん:2011/11/08(火) 20:03:42.13 ID:???
>>66
ちなみにapt-getの場合はapt-fileってのがあるらしいね。
84nobodyさん:2011/11/08(火) 21:22:37.56 ID:???
>>65

ビンゴ!zlib1g-devでできたよー!ありがとー!

最初から手順まとめるとこんな感じ。

bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
source ~/.zshrc
rvm install 1.9.3
sudo aptitude install zlib1g-dev
cd ~./rvm/src/ruby-1.9.3-p0/ext/zlib
ruby extconf.rb
make
make install
gem install rails
sudo aptitude install sqlite3
sudo aptitude install libsqlite3-dev

rvmの手順を端折るともうちょっと易しくなるかも。
でもこれでもwindows環境に比べればだいぶ躓かない方だよな。
native拡張が鬼門だと感じた。
85nobodyさん:2011/11/08(火) 21:42:12.98 ID:???
次はexecjsでひっかかるんじゃないのか
86nobodyさん:2011/11/08(火) 22:22:18.44 ID:???
いや、execjsはなんとかなったが、opensslがインストールできない。
87nobodyさん:2011/11/08(火) 22:25:58.48 ID:???
これだけじゃ不親切だな・・・

rails g scaffold .... とかのコマンドを実行すると、

Could not find a JavaScript runtime.
See https://github.com/sstephenson/execjs
for a list of available runtimes. (ExecJS::RuntimeUnavailable)

って言って怒られる。

これを回避するには、rails new で作ったフォルダ直下にある
「GemFile」フォルダを編集して、
gem 'execjs'
gem 'therubyracer'
っていう行2つを追記、その後
「bundle install」コマンドを実行するとよい。

でもその後scaffoldするとやっぱり「cannot load such file -- openssl 」っていうメッセージで怒られる。
sudo aptitude install libssl-devでも解決しないため、今回は様子が違うのかも。
88nobodyさん:2011/11/08(火) 22:37:31.47 ID:???
あ、ごめんなんか自己解決したみたいだわ

sudo aptitude install libssl-dev
cd ~/.rvm/src/ruby-1.9.3-p0/ext/openssl
ruby extconf.rb --with-openssl-include=/usr/include --with-openssl-lib=/usr/lib
make all
make install

これでOK。
zlibの時は

ruby extconf.rb
make
make install

だけだったんで、何らかのオプションが必要だったのがわからんかった。
89nobodyさん:2011/11/08(火) 22:38:48.46 ID:???
ちゃんと ext 内の openssl のとこでextconf.rb; make したか?
多分そこクリアすればあとは何事もなく rails s 出来るはず。

あと gem 'execjs' はいらんかったと思うぞ。
自分はいちいち gemfile 編集するのめんどくさかったので node.js をインストールしたわ。
90nobodyさん:2011/11/08(火) 22:48:13.35 ID:???
>>89
Gemfile はいじりまくるぞ
rails すら bundle で入れてしまうからな
91nobodyさん:2011/11/08(火) 23:21:40.05 ID:fvm2Nfle
最近テストが遅くて困っていて考えたのですが聞いてください
以下のようなspecをテストしたとします
before{ @player = Player.find(1) }
describe "レベルアップをすると、" do
before { @player.levelup! }
it "HPがレベルに応じて上昇している" { @player.max_hp.should==100 }
it "MPがレベルに応じて上昇している" { @player.max_mp.should==30 }
it "攻撃力がレベルに応じて上昇している" { @player.attack.should==30 }
it "防御力がレベルに応じて上昇している" { @player.defense.should==30 }
end
これって展開すると次のように動いてテストがされているのですがはっきりいって
殺意の湧くほど冗長ではないでしょうか?
before{ @player = Player.find(1) }
before{ @player.levelup! }
it "HPがレベルに応じて上昇している" { @player.max_hp.should==100 }
before{ @player = Player.find(1) }
before{ @player.levelup! }
it "MPがレベルに応じて上昇している" { @player.max_mp.should==30 }
before{ @player = Player.find(1) }
before{ @player.levelup! }
it "攻撃力がレベルに応じて上昇している" { @player.attack.should==30 }
before{ @player = Player.find(1) }
before{ @player.levelup! }
it "防御力がレベルに応じて上昇している" { @player.defense.should==30 }
正直、levelup!メソッドは1回だけ呼んでくれるようにRSpecに新しい書式が入れば
実効速度が劇的に上がるのですが
何方か興味あって作業とかする気ありませんか?

92nobodyさん:2011/11/08(火) 23:27:49.44 ID:???
>>91
before(:all)
93nobodyさん:2011/11/08(火) 23:43:23.37 ID:w7mXyzqt
>>74
自分は、オープンクラス系のファイルの置き場や
プロジェクトの共通関数的なクラス,モジュールの置き場にしてる。

他のRailsプロジェクトのlib配下の使い方を見てみるといいよ
9491:2011/11/08(火) 23:43:54.67 ID:fvm2Nfle
なん… だ(以下略
95nobodyさん:2011/11/09(水) 02:42:58.80 ID:???
>>89
おれもGemfileいちいちいじるのが面倒なんだけど
rails newで自動的にgemfileに書き込んでくれる設定にできないのかな?
96nobodyさん:2011/11/09(水) 03:09:58.83 ID:???
>>95
また教えて君か
君がここに来るのは三年早い
97nobodyさん:2011/11/09(水) 03:18:32.57 ID:???
まあ英語でどっかのフォーラムに聞いたほうが
親切な人が教えてくれると思う
98nobodyさん:2011/11/09(水) 03:55:21.99 ID:???
大抵のことは海外のどこかフォーラムでほぼ全て前例がある。

辞書を引きながらしてでも
英語すら分からない教えて君は
このスレに来なければいい。
それで万事解決。
99nobodyさん:2011/11/09(水) 06:53:18.55 ID:???
>>96-98
次スレ立てるときにテンプレにそう書いてもらうように相談するか
別スレ立てて数人だけで話すればいいんじゃね?
今ココでやる話じゃねえだろ
100nobodyさん:2011/11/09(水) 08:33:23.00 ID:???
いつもの人だから触らないほうがよろし
101nobodyさん:2011/11/09(水) 08:39:05.48 ID:CM+TyzJl
before(:all) じゃなく?
102nobodyさん:2011/11/09(水) 12:05:31.81 ID:???
>>100
教えて君本人乙
103nobodyさん:2011/11/09(水) 21:05:09.77 ID:???
俺が詰まったところはだいたいここで解説されてたわー

http://www.devsite.jankh.net/rurailserr.html
104nobodyさん:2011/11/10(木) 01:41:10.32 ID:???
105nobodyさん:2011/11/11(金) 18:37:13.43 ID:???

http://www.s3fox.net/
https://addons.mozilla.org/ja/firefox/addon/amazon-s3-organizers3fox/

https://github.com/edavis10/heroku_s3_backup

Amazon EC2/S3で作るWindows公開サーバ(後編) − @IT
http://www.atmarkit.co.jp/fwin2k/operation/aec2s3_2/aec2s3_2_02.html
S3Foxの画面
ローカル・マシンとAmazon S3間のファイル転送や、Amazon S3の各種設定が行える。
http://www.atmarkit.co.jp/fwin2k/operation/aec2s3_2/scr11_03.gif

Amazon S3を使いこなしてみよう 〜Amazon EC2/S3環境構築のすべて〜(2/3):CodeZine
http://codezine.jp/article/detail/3232?p=2
106nobodyさん:2011/11/11(金) 21:05:09.67 ID:???
CapyaraでテストドライバとしてSeleniumのRemoteWebDriverを使っているのですが、
Factory Girlでデータを作ってもブラウザからアクセスする前にデータベースがロールバックされてしまいます。
Factory Girlのロールバックのタイミングなどをこちらから指定するようなことはできないのでしょうか。
107nobodyさん:2011/11/11(金) 23:50:04.15 ID:???
>106

http://railscasts.com/episodes/257-request-specs-and-capybara?view=asciicast
まさにこちらで最後に書いてある状況であれば、
spec/spec_helper.rb 内で
config.use_transactional_fixtures = false
した上で、database_cleanerを使ったりするとよいらしいです。
108nobodyさん:2011/11/12(土) 00:18:44.23 ID:???
>>95
rspec常用するようになってから、俺もGemfile自動生成してほしくなった。
109nobodyさん:2011/11/12(土) 00:38:41.61 ID:iTYein4A
template使えば?
110nobodyさん:2011/11/12(土) 04:27:22.47 ID:???
111nobodyさん:2011/11/12(土) 12:51:15.39 ID:???
>>107

返信ありがとうございます

Factory Girl 自身でなんとかできれば嬉しかったのですが厳しそうですかね

before :all で生成するとロールバックされないという仕様なのかよくわからない
現象を利用してテストしていました
112nobodyさん:2011/11/12(土) 21:48:46.27 ID:???
113nobodyさん:2011/11/13(日) 05:08:53.99 ID:???
114nobodyさん:2011/11/13(日) 05:47:22.20 ID:???
s3 = AWS::S3.new(
:access_key_id => 'YOUR_ACCESS_KEY_ID',
:secret_access_key => 'YOUR_SECRET_ACCESS_KEY')

Reading and Writing to S3
Each object in a bucket has a unique key.
photo = s3.buckets['mybucket'].objects['photo.jpg']

Writing to an S3Object:
photo.write(File.read('/some/photo.jpg'))

Reading from an S3Object:
File.open("/some/path/on/disk.jpg", "w") do |f|
f.write(photo.read)
end

http://docs.amazonwebservices.com/AWSRubySDK/latest/AWS/S3.html

http://aws-portal.amazon.com/gp/aws/developer/account/index.html?action=access-key
https://github.com/amazonwebservices/aws-sdk-for-ruby

http://aws-portal.amazon.com/gp/aws/developer/account/index.html?action=access-key
https://addons.mozilla.org/ja/firefox/addon/amazon-s3-organizers3fox/
115nobodyさん:2011/11/13(日) 20:51:21.27 ID:???
RubyでAmazon S3のマルチパートアップロードを利用する
http://doruby.kbmj.com/yoppi_on_rails/20111026/Amazon_S3_
116nobodyさん:2011/11/14(月) 01:15:38.48 ID:???
117nobodyさん:2011/11/14(月) 09:38:52.04 ID:???
URL貼る奴って、ここを自分の備忘録だと思ってるんじゃないか、と思い始めた
118nobodyさん:2011/11/14(月) 17:27:42.54 ID:???
備忘録なら自分しか見れないとこに貼るだろ
まあ、備忘録要素が含まれることはあるかもしれんが、基本は皆ににみてほしいんじゃろ
119nobodyさん:2011/11/14(月) 18:59:18.73 ID:???
railsの利点って何よ?
CakePHPとかはバージョンだけ合わせて
ファイル群を置きさえすれば動く

railsはいちいち全ての環境を自分で整えないといけないし
一般の共有レンタルサーバーでは使えないから
あまり利点が見いだせない
120nobodyさん:2011/11/14(月) 19:04:18.57 ID:JGw7uxZH
外部プレイヤーという形で自分のサイトからFlashを読み込ませていたのですが
今回大幅にサイトのURL構成が変わりました

前のURLが
abc.com/flash/xxxx.swf
だったところを
player.abc.com/xxx.swf
にしました

そこで、routeで
matcg "/flash/xxx.swf" => "output#hoge"

def hoge
send_filr( xxx.swf )
end

としてみましたが、ダウンロードは出来るのですが外部から読み込むことが出来ません(URLではswfのダウンロードが始まります)
routeで画像やFlash等のファイルにリダイレクトすることは不可能でしょうか?
その場合、Apacheのhttpで行うのが自然でしょうか?

わかりづらい質問で申し訳ないですがよろしくお願いします
121nobodyさん:2011/11/14(月) 19:13:09.07 ID:???
>>119
オブジェクト指向ですんなり書ける

CakePHPはActiveRecordがなぁ…
戻り値が配列ってのが俺はどうしても気に入らん
122nobodyさん:2011/11/14(月) 19:52:23.43 ID:???
>>119
やりたいことを実現するまでの手間+時間が少なくてすむ
細かい調整とかは…
123nobodyさん:2011/11/14(月) 20:01:30.49 ID:???
単純にrubyで書けるってのが利点じゃないのかね。
趣味の問題と考えても問題ないかもな。

俺は宗教上の理由でPHPは書けないからDjangoかRailsかの選択になった
124nobodyさん:2011/11/14(月) 21:15:18.55 ID:???
>>119
CakePHP の Array 地獄は PHPer には平気なんだろうか?
慣れなのか悟りなのか…

Rubyist からすればアレはないわと思うもんだけど
125nobodyさん:2011/11/14(月) 22:35:55.34 ID:???
>>120
disposition: :inline
126125:2011/11/14(月) 22:39:51.78 ID:???
>>120
お望みのリダイレクトじゃないけど、send_fileにさっき書いたオプション付けたらダウンロードはされないはず

127nobodyさん:2011/11/16(水) 12:47:21.88 ID:???
Rails 3.0 から 1年半、ようやく Hobo 1.3 正式版リリース
http://hobocentral.net/blog/2011/11/15/hobo-1-3-released/
128nobodyさん:2011/11/16(水) 23:25:49.85 ID:???
Rails3のActiveRecordにおけるvalidationでレコードの値を動的に使った検証をやりたいのだけど
うまい方法を知っていたら教えてもらえんだろうか。

例えばlengthバリデーションでmaximumにレコードのlimit_lengthの値を使って制限をかけたいとき
:ifオプションの真似事ができないかと下記のようにしても(当然)ProcとFixnumは比較できんと怒られた。
# 失敗例1
class Person < ActiveRecord::Base
validates :name, :length => {maximum: ->x{x.limit_length}}
end

特異メソッドでバリデート直前に動的にバリデートを押し込むとうまくいったように見えたが
同じインスタンスに対してvalid?を複数回実行すると同一のバリデーションが増殖していってしまう不具合が出た。
# 失敗例2
class Person < ActiveRecord::Base
before_validation do
c = class << self;self;end
c.validates :name, :length => {maximum: self.limit_length}
end
end

情けないことにこれで手が尽きてしまった
129nobodyさん:2011/11/16(水) 23:51:29.66 ID:j4fL3UJx
不要なときにも呼ばれてしまうけど、インスタンスが作られるタイミング
(after_find と after_initialize)で押し込んだらどうだろう。
130nobodyさん:2011/11/17(木) 05:46:26.03 ID:???
131nobodyさん:2011/11/17(木) 06:49:09.61 ID:???

app/helpers/uploads_helper.rb at master from ncri/Rails-S3-Uploader-Example - GitHub
https://github.com/ncri/Rails-S3-Uploader-Example/blob/master/app/helpers/uploads_helper.rb

Simple File Upload to Amazon S3 From Ruby
http://www.rubyinside.com/simple-file-upload-to-amazon-s3-from-ruby-313.html

Uploading directly to Amazon S3 from a Rails application | blog.andrewbruce.net
http://blog.andrewbruce.net/upload-direct-to-amazon-s3-from-rails
132nobodyさん:2011/11/17(木) 09:39:48.99 ID:???
133nobodyさん:2011/11/17(木) 09:49:11.41 ID:???
134nobodyさん:2011/11/17(木) 10:45:56.15 ID:???
https://gist.github.com/1372116
な感じで config/initializers/ 内で active model にパッチあてて使ってる。
けど正しいのか不安なところが色々
135nobodyさん:2011/11/17(木) 13:58:45.55 ID:???
コントローラに@a=["hello", "everyone"]に設定し
viewで <%= @a %>をつかうと hellovereyoneとなってしまんですが
["hello", "everyone"]のように表示させることはできますか?
136nobodyさん:2011/11/17(木) 15:28:49.75 ID:???
>>135
inspect
137nobodyさん:2011/11/17(木) 15:33:32.74 ID:???
ほとんど使わないが debugというのもあったような気がする
138nobodyさん:2011/11/17(木) 17:32:45.31 ID:???
タイプミスなのはわかるんだが vereyone はどこからきたんだろうとかちょっと考えてしまったよ
139nobodyさん:2011/11/17(木) 18:11:28.73 ID:???
Ruby in steel 2 今日だけ $79.68
http://www.bitsdujour.com/software/ruby-in-steel-2/

ってどうっすか?
なにも考えずにとりあえずポチるのにはちょっと勇気がいる価格なんで。
140nobodyさん:2011/11/18(金) 01:29:48.98 ID:???
STIが問題となるのってどういうとこ?
141nobodyさん:2011/11/19(土) 08:16:12.38 ID:???
142nobodyさん:2011/11/19(土) 08:24:40.73 ID:???
143nobodyさん:2011/11/19(土) 08:29:10.96 ID:???
【Ruby】WindowsでRuby1.9.2とgem1.3.7環境構築 | システムメモ
http://takefushi.blog.fc2.com/blog-entry-5.html
144nobodyさん:2011/11/19(土) 11:45:36.01 ID:???
145nobodyさん:2011/11/20(日) 04:14:11.98 ID:???
146nobodyさん:2011/11/20(日) 12:04:06.02 ID:???
Background Jobs on Heroku/Cedar

The Cedar stack supports any arbitrary background worker system,
including Delayed Job, Resque, Stalker, or even your own home-grown queueing library.
See the article on Procfile for more information.
http://devcenter.heroku.com/articles/queueing#background_jobs_on_herokucedar


http://devcenter.heroku.com/articles/procfile


147nobodyさん:2011/11/20(日) 22:51:23.59 ID:kfs4r0KB
RailsのPlug-inを作ったのでちょっと宣伝させて頂きます

https://github.com/baban/flextures

fixtureを扱うPlug-inですが特徴は下のような感じです

1.yamlよりもcsvを優先する
2.migrationでテーブル構成が変わっても、ロードを停止しないで、カラムの変更点を検知して値を補完する
3.テーブル名と、fixtureのファイル名を一致させないでも自由なロード&ダンプが出来る機能
4.FactoyGirl風の読み込みフィルタで、Fixtureのデータを加工しながら読み込む事が出来る

世間的にはFactoryGirlの流れですが、csvでデータを作ってExcelの方が性に合っていたので
これまでのfixtureの欠点を解決する方向で出来ないかな、と
自分で入れたり改良してきたりしていたgemの機能をひとまとめにして見ました
148nobodyさん:2011/11/20(日) 23:52:47.38 ID:???
何年もfixture使ってないのであれだが。
大文字オプションがちょっとRailsっぽくないかな。

あと、せっかくなのでどうせなら英語で書いて欲しい。
そこがちょっともったいない。

149nobodyさん:2011/11/21(月) 01:07:55.81 ID:Ib4G0NHd
Rails3でproductionにしたらプリコンパイルなんちゃらがどーのこーのと言われてエラーはかれます
なにやらCSSの先頭全部にrequire_selfをつけて、productionでいっこいっこ全部読み込み命令を書かなければならないとか書いてありました
なんでこんな改悪したのか知らないですけど、development時と同様にassetsの中のcssを勝手に読み込んでくれるようにするにはどうすればいいですか?
config.assets.compile = true
はやってみましたけど、CSSが読み込まれないことに変わりありませんでした

150nobodyさん:2011/11/21(月) 01:41:38.41 ID:???
そんなん rake コマンド一発でコンパイルできるやん…
151nobodyさん:2011/11/21(月) 01:56:23.20 ID:???
>>150
え、できないのはこちらの問題でしょうか……
rake assets:precompile
のことを言ってますよね?
152147:2011/11/21(月) 09:04:46.04 ID:0xjmsfnC
>>148
ご意見どうもです
FactorGirl並のhas_manyでのデータ精製能力とか
狙っているところは結構あるのですが
まず、少し安定版にしたいので、待ちって感じなので

英語版ドキュメントでも用意しようかと思います
大文字オプションは、本家のRailsのrakeタスクに合わせているのでしばらくこの方針を貫こうかと…
153nobodyさん:2011/11/21(月) 10:07:07.85 ID:???
>>151
webrick使ってるのでは?
config/environments/production.rb の
serve_static_assets を true にしてみ?
154nobodyさん:2011/11/21(月) 18:03:47.40 ID:Ib4G0NHd
>>153
サーバーはApache+Passengerです
rake:precompileを行うとjsと画像はコンパイルされるのですが、cssはされません
assetsの中にあるcssを読み込んでくれませんうぐぐ

バージョンはRails3.1.0です

155nobodyさん:2011/11/21(月) 18:36:11.53 ID:???
cssにエラーがあると、確かにjsと画像だけになるけど、エラーメッセージは出るな。
156nobodyさん:2011/11/21(月) 18:58:42.21 ID:Ib4G0NHd
>>155
あー間違いなくそれです
でも、スターハックとかブラウザ依存とかの処理なのでそこらへんは消せないんですが
そういう場合は、該当CSSだけをpublic/asssetsにおいてーって感じでしょうかね
試してみます
ありがとうございました
157nobodyさん:2011/11/21(月) 19:23:00.25 ID:???
precompile でエラーが出てるというのにそれをまるっと無視してたってことかよ…
158nobodyさん:2011/11/21(月) 19:36:40.12 ID:Ib4G0NHd
>>157
エラーって言っても、○○はコンパイルできませんでした。
って出るだけでそれ以外は全て正常に終了したように見えるから1つでもこけるとCSS全部コンパイルされないって言うのはわからないと思う
159nobodyさん:2011/11/21(月) 19:42:44.69 ID:???
> エラーって言っても、○○はコンパイルできませんでした。
> って出るだけ
十分な情報じゃん
それ以上何を求めるの?
160nobodyさん:2011/11/21(月) 19:54:47.71 ID:???
>>159
よう文盲
161nobodyさん:2011/11/23(水) 08:34:31.88 ID:???
compressをtrueにしてると、うちはたまに失敗する。
何でかは不明だが。
162nobodyさん:2011/11/23(水) 18:24:49.15 ID:???
163nobodyさん:2011/11/23(水) 20:47:59.39 ID:???
初心者の質問でもうしわけなかとですが
DBの一度値を入れたフィールドを再度空にする方法はありませんでしょうか

よろしくお願いしゃす
164nobodyさん:2011/11/23(水) 21:14:52.11 ID:???
Railsのdeleteとdestroyの違いをおさらいする - pochiのメモ帳
http://d.hatena.ne.jp/POCHI_BLACK/20101026

acts_as_paranoidで論理削除してみるよ( ̄▽ ̄) - 割と意味はない
http://d.hatena.ne.jp/zrsv/20090319/p1
165nobodyさん:2011/11/23(水) 21:39:25.57 ID:???
Connecting to Heroku Postgres Databases on Vimeo
http://vimeo.com/28345488

Provisioning Databases on Heroku Postgres on Vimeo
http://vimeo.com/28345436

https://postgres.heroku.com
https://postgres.heroku.com/blog
166nobodyさん:2011/11/23(水) 22:22:53.26 ID:???
メールの不正をチェックし、かつsageだけ通すvalidation
どうやって作ったらいいんですか?
それともプラグインある?
宜しくお願いします
167nobodyさん:2011/11/23(水) 22:42:31.42 ID:???
email: true と :if で sage 以外の時にしたら
168nobodyさん:2011/11/23(水) 22:46:19.64 ID:???
>>163
DB全体を空にするんじゃなくて1つのフィールドだけ?

nil入れてsave
entry = Entry.find(1)
entry.title = nil
entry.save
みたいな
169nobodyさん:2011/11/23(水) 23:17:20.23 ID:???
rails generate model thread
ってやるとエラーになるんだが、
なぜでしょうか?

170nobodyさん:2011/11/23(水) 23:23:08.42 ID:???
予約語
メソッド名
171nobodyさん:2011/11/23(水) 23:33:47.50 ID:???
>170
予約語、メソッド名をモデル名にしたい場合はどうすればいいでしょうか?

172nobodyさん:2011/11/23(水) 23:45:04.74 ID:???
やり方はわからないけど多分イバラの道
避けといたほうがいいんじゃない?
173nobodyさん:2011/11/23(水) 23:53:23.03 ID:???
設定より規約(せっていよりきやく、英: convention over configuration)
174nobodyさん:2011/11/23(水) 23:55:59.05 ID:xeQc9E1k
The name 'Thread' is either already used in your application or reserved by Ruby on Rails.
Please choose an alternative and run this generator again.
って言われるんだから従っておけ。
175nobodyさん:2011/11/24(木) 00:10:32.18 ID:???
予約語とかメソッド名とかじゃなく、Ruby の組み込みクラスだからだな

無理に付けるとすれば bbs/thread とか module 内に入れてしまうという手も
考えられるが、皆が言ってるように大人しく別名を付けるのが良さげ
Topic とかな
176nobodyさん:2011/11/24(木) 00:49:47.11 ID:???
>>168
おっすうまくいきやした
あとんす
177nobodyさん:2011/11/24(木) 09:10:32.41 ID:???
169です。
返事が遅くなってすみません。

>170
>予約語
>メソッド名

>172
やり方はわからないけど多分イバラの道
避けといたほうがいいんじゃない?

>173
>設定より規約(せっていよりきやく、英: convention over configuration)

>174
>The name 'Thread' is either already used in your application or reserved by Ruby on Rails.
>Please choose an alternative and run this generator again.
>って言われるんだから従っておけ。

>175
>予約語とかメソッド名とかじゃなく、Ruby の組み込みクラスだからだな
>
>無理に付けるとすれば bbs/thread とか module 内に入れてしまうという手も
>考えられるが、皆が言ってるように大人しく別名を付けるのが良さげ
>Topic とかな


了解しました。
執着せず別のモデル名にします。
ありがとうございました。

178nobodyさん:2011/11/24(木) 13:18:20.88 ID:???
Hoge::Threadみたいなモデルの下に入れればいいだけだと思うけど
名前にこだわるなら元から名前空間切っとけってことだ
179nobodyさん:2011/11/25(金) 03:43:53.52 ID:???
稼動がよく利益を上げてるサイトほど
俺俺フレームワークか
学習コストの低いフレームワークを使ってるケースが多い気がする。

なんかお前ら変な方向に行ってないか?
本来の目的は売上げを上げることにある。

生産性とか可読性とかプログラマーが利益になるだけで
運営者はそんなことどうでもいいと思ってる。


180nobodyさん:2011/11/25(金) 04:44:06.14 ID:???
生産性や可読性が上がれば、工数が減る。
それは利益に繋がるだろ。

オレオレフレームワークは、余程よく出来てない限り、学習コストが高い(Railsも学習コスト高いけどな)。

181nobodyさん:2011/11/25(金) 04:44:37.32 ID:???
SNSがでたころのさぶみっとは良かったぞ
120万円で受注したからな。
182nobodyさん:2011/11/25(金) 08:49:22.05 ID:???
http://blog.madoro.org/mn/84
独自フレームワークはやめよう
作るのが難しい、メンテナンスが難しい、ということに加えて、もう一つの問題点は、新しく加わった人の教育コストが高くなるということがある。
まず、外の資源(ドキュメント/本/Google検索)が使えないので自前ですべて教育をしなくてはならない。
183nobodyさん:2011/11/25(金) 15:32:13.35 ID:???
>>180

>生産性や可読性が上がれば、工数が減る。
>それは利益に繋がるだろ。

それは本当の利益ではない。
webの本来の利益は広告だったり、ユーザーからの課金。

>>182

独自フレームワークでもcodeigniterよりも軽量な独自フレームワークなら
教育コストはかからない。

184nobodyさん:2011/11/25(金) 15:39:52.68 ID:???
>>183
こいつアホだな〜
185nobodyさん:2011/11/25(金) 15:40:13.97 ID:???
毎年、生産性の高いフレームワークが出て
フレームワークを変えると
毎年、学習コストがかかる。

最近はfuephpが出てるけど
俺はphpだけでいいと思う。

単純にフレームワークにもて遊ばれてるだけ。
フレームワークがどれほどネット社会に利益をもたらしたのか
全くわからない。

186nobodyさん:2011/11/25(金) 16:07:16.38 ID:???
学習コストって言うけど、そんなめんどいもんか?

Rails にせよ他のフレームワークにせよ、全機能を網羅的に使えるエキスパートになるなら
相応のコストがかかるが、ある程度使えるようになるレベルまでなら大したことないぞ

そしてその結果、バグが少ないシステムを短期間で作れて保守も容易(あくまでフレーム
ワークを使わなかった場合と比較してだが)となれば、答えは明らかだよな
187nobodyさん:2011/11/25(金) 18:05:11.99 ID:???
>>186
まずエキスパートになるつもりはないから
無駄な学習はしたくない。

web運営で利益を上げるためにプログラムしてる。
プログラムは手段のひとつでしかない。
たいていが目的と勘違いしてる。

バグが少ないシステムを短期間でつくれてると思ってるだけ。
たとえば、怪盗ロワイヤルをRoRで3人で作るのと
フレームワークなしで3人で作るのと
どっちが短納期だと思う?
答えは明らか。

188nobodyさん:2011/11/25(金) 18:21:16.48 ID:???
RoRで月間売上げ1億円以上のサイトて
そもそもある?
RoRてプログラマが満足してるだけで
Win-Winになってないよ。
PHPの独自フレームワークのシステムの方が売上げてるのはなぜ?
189nobodyさん:2011/11/25(金) 18:58:35.21 ID:???
まぁ、そうなんかもしれんけどなんでそれをわざわざここに言いにくる必要があるん?
190nobodyさん:2011/11/25(金) 20:21:19.39 ID:???
わかるだろ
挫折したからブドウが酸っぱいって言いにきたんだよ
191nobodyさん:2011/11/25(金) 20:34:19.99 ID:???
>>188
そんな事も知らないで偉そうにフレームワーク論すか カスだな
自分の小さい基準で世界を見ようとする馬鹿な奴
twitterはサービスイン当初Railsだった
食べログは多分国内最大のRailsサイト
挙げたらキリが無いぐらいに存在するよ
192nobodyさん:2011/11/25(金) 20:38:47.81 ID:???
だいたい独自フレームワークなんて一年もすればスパゲッティに陥ってメンテ不可能になる事例が多すぎる
つーかこの馬鹿は何の仕事してるんだ?学生か?あるいはアフィリエイトで小銭稼ごうと奮闘しちゃってる人?
193nobodyさん:2011/11/25(金) 20:41:02.19 ID:???
久々に変な人が湧いてると聞いてw

>>188
その凄い売り上げを誇る独自フレームワーク使ったサイトを教えてくれませんか
194nobodyさん:2011/11/25(金) 20:53:18.15 ID:???
>>192
お前の作ったRoRのシステムなんて1年もしないうちに閉鎖するから



メンテのことまで考えなくても大丈夫。

195nobodyさん:2011/11/25(金) 20:55:35.31 ID:???
売上はサービス内容によってもたらされるもの
コスト削減は開発の生産性やメンテナンスのやりやすさによってもたらされるもの

まったく違う土俵の話をごっちゃにしてどうすんだよ
196nobodyさん:2011/11/25(金) 21:00:38.94 ID:???
いい加減に無駄な学習だと気付くべき。
197nobodyさん:2011/11/25(金) 21:02:43.43 ID:???
>>194
お前はどうせカスみたいなアフィリエイターなんだろ?
稼げない、技術も無い、金が無いから余裕も無い
何にも無いからこうやって2chで検討違いの持論を書き散らして悦に浸る馬鹿アフィリエイターに未来なし
198nobodyさん:2011/11/25(金) 21:33:21.64 ID:???
>>196
ついに理由も書けなくなったか
199nobodyさん:2011/11/25(金) 22:07:17.35 ID:???
RoRは負荷のかかるサイトには向いてない。
だから売上げの上がるサイトは出てこない。
200nobodyさん:2011/11/25(金) 22:22:34.92 ID:???
こんなとこで言ってないで総本山に斬り込んでくればいいのに。
http://rubyonrails.org/community

別にオレオレフレームワークでもPHPなんでも使えばいいじゃない。
上司にRails使えって命令されて腐ってるんだったらそんなのここで言われても困るとしか。
201nobodyさん:2011/11/25(金) 22:35:31.54 ID:???
でもみんな使ってるフレームワークに乗っかると、
情報もいいプラグインも自然に集まってくるじゃん?
202nobodyさん:2011/11/25(金) 22:48:57.16 ID:???
何でそこまで執拗にフレームワークを嫌うのかねぇ?
O/Rマッパーなんて一度使ったら離れられないと思うんだが…(CakePHPを除く)
203nobodyさん:2011/11/25(金) 22:51:12.73 ID:???
SQLとか糞だしな。
204nobodyさん:2011/11/26(土) 02:18:55.51 ID:???
ここに限らんが,本当にIDが常時出ないスレッドは正視に耐えん
205nobodyさん:2011/11/26(土) 02:27:21.27 ID:???
あくまで俺の推測だが
ちょっと前にPassengerからみでしつこく質問してた彼だと思うんだよね
ここで冷たくされた挙句Rails自体に悪意を抱いちゃったパターンかと
よく見かける風景ではある
206nobodyさん:2011/11/26(土) 02:52:26.57 ID:???
私はC#のスレッドも読んでいるが,似たような構図があるな
207nobodyさん:2011/11/26(土) 06:02:18.81 ID:???
絶対前スレのこの人だと思う
散々質問しておいて結局自力で環境すら構築できなかったのでさじを投げて3000円出すから環境作ってくれ発言して消えた人
改行の仕方、句読点の使い方が全く同じ
あれから二ヶ月を経てアンチRailsとなって帰ってきた模様 哀れですね

461 nobodyさん[sage]投稿日:2011/09/12 03:18:03 ID:???
Apache
MySQL
PHP(php-mysql)
phpMyAdmin
sqlite3
Ruby1.9
rails3.1
gem-mysql2

これらが干渉せずに問題なく動くよう
CentOS5.6に入れたいと思います。

しかし何度試しても必ずどこかで引っかかります(特にphpMyAdminの部分)
初期状態のCentOS5.6をお持ちの方で上の条件をクリア出来る方いたら
手順を書いていただけませんか?
こちらでも試してみて、それらが問題なく動くようであればpaypal経由で少ないかもしれませんが3000円を差し上げます。

お時間ある方で試してもいいよ!という方いましたら
よろしくお願いします。
208nobodyさん:2011/11/26(土) 07:29:54.77 ID:???
改行や句読点に癖あるか?その文
俺にはさっぱり区別がつかない
209nobodyさん:2011/11/26(土) 07:34:17.15 ID:???
なら、おまえらにも責任の一端があるということじゃないか
今後は質問をやさしくあしらってやれよ
210nobodyさん:2011/11/26(土) 08:57:45.38 ID:???
Rails使いはPHP厨と違って技術的向上心が高い人間が多いから
技術的なことが原因で言い争いが起こることもある。
PHPが良いかRubyが良いかPythonが良いか等と喧嘩することは良くある話だよね。

一方、PHP厨は盲目的に「PHP最強」と思い込んでるから技術的なことで喧嘩することはない(笑

たしかにPHPはWeb開発素人にやらせるには良い言語だと思うけどね。
でも、社内にPHP厨ばっかりという環境ではレベルが高いエンジニアは
応募してこないし、入社しても定着しない。
211nobodyさん:2011/11/26(土) 09:26:38.77 ID:???
スルースキルが足りなくねえか?
212nobodyさん:2011/11/26(土) 09:59:58.60 ID:???
・Ubuntu 10.04
・ruby 1.9.3-p0
・rails 3.1.1(vendor/bundle配下にインストゥール)
この環境でattachment_fuプラグインをインストロールしたら、定数「RAILS_ROOT」が見当たらないっていうエラーが出始めた

uninitialized constant Technoweenie::AttachmentFu::RAILS_ROOT (NameError)

なんか特別に設定してあげなきゃいけない項目とかありましたかね?
213nobodyさん:2011/11/26(土) 10:30:46.66 ID:???
RAILS_ROOT を使っている方は、Rails.root
http://fanblogs.jp/techmemo/archive/72/0
214nobodyさん:2011/11/26(土) 11:12:53.48 ID:???
>>205
どうしてRuby関連のproductsって悪意を抱かれやすいのはなぜ?
215nobodyさん:2011/11/26(土) 11:49:31.30 ID:???
>>214
ある程度広まった証じゃね?
216nobodyさん:2011/11/26(土) 12:00:20.58 ID:???
他にもRubyより広まってる言語は多数あるのに
どうしてRubyだけが悪意を抱かれやすいのはなぜ?
217nobodyさん:2011/11/26(土) 12:05:07.18 ID:???
>>216
PHPもJavaもアンチはいるよ
お前が「Rubyだけ悪意を抱かれやすい」と思ってるだけでしょ
218nobodyさん:2011/11/26(土) 12:44:46.00 ID:rP07j4X9
herokuで
The page you were looking for doesn't exist.

You may have mistyped the address or the page may have moved.

という表示でる原因分かる方いませんか。
219nobodyさん:2011/11/26(土) 15:59:23.44 ID:???
>>218
書いてるまんま
URLが違うんでしょ
220nobodyさん:2011/11/26(土) 16:28:49.35 ID:???
>>216
宗教じゃね?
221nobodyさん:2011/11/26(土) 19:55:09.26 ID:???
>>213
情報ありがとう。
プロジェクトフォルダgrepしてみると、いろんなところでRAILS_ROOT使われてるな。
めんどくさいから
lib/technoweenie/attachment_fu.rb の5行目に
RAILS_ROOT=Rails.rootって定義してみたけど、
果たしてこの解決方法でいいのか釈然としない・・・
222nobodyさん:2011/11/26(土) 21:00:05.13 ID:???
いや、せめて RAILS_ROOT ||= Rails.rootかな。。。
223nobodyさん:2011/11/26(土) 23:50:48.52 ID:QNvO5n/L
config/initializers/rails_root_compatibility.rb とか作って書いてみたらどうだろう。
224nobodyさん:2011/11/27(日) 11:20:30.72 ID:???
225nobodyさん:2011/11/28(月) 09:18:08.66 ID:???
なんで今更 Rails2
226nobodyさん:2011/11/28(月) 09:32:58.16 ID:A9QRXd1I
ボットがそこまで見るかどうか。
227nobodyさん:2011/11/28(月) 13:46:23.69 ID:???
Twitter連携するようなのを作ってみたいんだけど、
オススメとか定番とかのプラグインてありますか?

最近Twitter側の仕様が変わって動かないものがあるみたいで・・
228nobodyさん:2011/11/28(月) 14:22:02.31 ID:???
OmniAuth
229nobodyさん:2011/11/28(月) 17:58:23.26 ID:???
omniauth
230nobodyさん:2011/11/28(月) 20:05:29.07 ID:???
>>228-229
サンスコ
Facebookもいけるのか
ありがたい
231nobodyさん:2011/11/28(月) 20:54:20.59 ID:KA74gRUt
Automated Heroku Database Backups to Amazon S3, Rackspace Cloud Files, or Google Storage - Jack Chu
http://jackchu.com/automated-heroku-database-backups-to-s3
Automating Heroku PG Backups @MetaSkills.net
http://metaskills.net/2011/01/03/automating-heroku-pg-backups/

http://2chnull.info/r/php/1311050686/880-884
232nobodyさん:2011/11/28(月) 21:10:31.94 ID:KA74gRUt
233nobodyさん:2011/11/28(月) 22:29:35.42 ID:???
OmniAuth試してみたけどそこらへんのサンプルがうまく動かなかった
なんかAPIの仕様が変わったみたいだね

古 request.env['omniauth.auth']['user_info']
新 request.env['omniauth.auth']['info']

この書き換えで動くようになった
うまくいきそうだよ、ありあがとう!
234nobodyさん:2011/11/28(月) 22:59:25.21 ID:A9QRXd1I
メジャーバージョン1.0が出ていろいろ整理されてるから
ブログとかの記事は当てにならなくなってるかもしれんな。
235nobodyさん:2011/11/29(火) 09:58:07.55 ID:???
テストの行い方についてサンプル等が書かれた本を教えていただけないでしょうか?

236nobodyさん:2011/11/29(火) 14:14:45.92 ID:FStxE3ag
237nobodyさん:2011/11/29(火) 14:31:16.91 ID:???
235です。

>>236
すみません。
標準のTest::Unitを使ったテストの勉強をしたいです。
よろしくおがいします。

238nobodyさん:2011/11/29(火) 14:38:42.35 ID:???
>>237
正直、もうTest::Unit使ってる人はほとんど居ないと思う。
今更、Rails 1.x の本を参照したいかい?
239nobodyさん:2011/11/29(火) 14:47:03.20 ID:???
240nobodyさん:2011/11/29(火) 14:57:47.33 ID:???
>>239
DHHはTest::Unit派なんだよな。俺もminitestとかのほうが好きだ
まあ俺はRSpecが難しくてうまく使えなかったからだけど…
241nobodyさん:2011/11/29(火) 15:21:44.34 ID:FStxE3ag
242nobodyさん:2011/11/29(火) 16:13:24.90 ID:FStxE3ag
243nobodyさん:2011/11/29(火) 16:13:51.86 ID:???

244nobodyさん:2011/11/30(水) 01:01:37.07 ID:???
railsてなんか変な方向にいってるんだよなあ。
ぶっちゃけ、そんなに作業効率よくないでしょ?
自分で書いたコードを1年ぶりに見てすぐ理解できる?
245nobodyさん:2011/11/30(水) 01:07:28.44 ID:???
>>244
他のフレームワークと比べたら一目瞭然だな
すっと頭に入る感じ

CakePHPとか1ヶ月前の自分のコードでも苦労したしw
246nobodyさん:2011/11/30(水) 01:14:36.03 ID:???
コーディングて自分の書いたコードを間隔が空いても
すぐ理解できるプログラムの生産性に勝るものはない。
247nobodyさん:2011/11/30(水) 01:16:48.43 ID:???
ここの住人は会社でケツ叩かれながらコーディングしてるから
最初は面倒な手続きをしても大丈夫だけど
1人だけでrailsでプログラムするとなると、設置するだけで面倒になるよw
248nobodyさん:2011/11/30(水) 01:22:51.41 ID:???
>>247
Apache の面倒さを考えれば、それプラス Passanger なんて屁でもない
249nobodyさん:2011/11/30(水) 01:26:04.28 ID:???
>>247
unicorn 使ってみろ
ラクラク過ぎて目からウロコだぞ
250nobodyさん:2011/11/30(水) 01:34:48.32 ID:???
railsにする基準を問いたいんだが
企業のお問い合わせフォームだけでもrailsで作るの?
251nobodyさん:2011/11/30(水) 01:35:53.75 ID:???
んなのはPHPで作る
252nobodyさん:2011/11/30(水) 02:04:19.86 ID:???
rails汎用性ないな。。。
253nobodyさん:2011/11/30(水) 02:05:22.83 ID:???
汎用性ってなに?
254nobodyさん:2011/11/30(水) 02:06:10.73 ID:???
わっしょーいと
お祭りさわぎしてるだけでしょ。
夏休みは終わりだよ・・・
255nobodyさん:2011/11/30(水) 02:25:07.77 ID:???
汎用性も知らんのか
どこでも使えるということ。
256nobodyさん:2011/11/30(水) 04:49:59.12 ID:???
んなのはsinatraでつくる
257nobodyさん:2011/11/30(水) 08:42:38.45 ID:???
汎用性とは3000円で問題なく動くことだ
258nobodyさん:2011/11/30(水) 09:07:08.24 ID:???
>>255
なるほど
Javaなんてtomcat必須で汎用性がまったくない、てことでおk?
259nobodyさん:2011/11/30(水) 09:45:55.52 ID:???
半妖精
260nobodyさん:2011/11/30(水) 12:40:42.00 ID:???
汎用性はシステムを構成するモジュール群それぞれの汎用性の最大公約数になるんじゃね?
261nobodyさん:2011/11/30(水) 13:30:18.65 ID:???
汎用性といえば、RailsはWindowsでの構築が面倒ってのは、まだそのままなのかな?
262nobodyさん:2011/11/30(水) 14:00:40.58 ID:???
というか、ruby自体がWindowsあまり見てない感じ。
何年もずっとインストールで詰まって、バージョン上がるたびにMLで聞いてる人もいるし
263nobodyさん:2011/11/30(水) 17:03:09.46 ID:???
>>262
Ruby自体はWindowsバイナリがあるぞ
展開してパス通せばそのまま使える
264nobodyさん:2011/11/30(水) 18:22:35.38 ID:???
パス通すのって地味に面倒だよな。
それくらいインストーラでやれよって感じ
265nobodyさん:2011/11/30(水) 18:50:23.89 ID:???
windosでやってる人もいるよ。
俺は半分windosで半分ubuntu。
気分で変えてる。
VC上がりなもんで、たまにIDEを使いたくなる。
飽きたらemacsで開発。
266nobodyさん:2011/11/30(水) 19:57:44.98 ID:???
RubyはWindowsで使わない方が良い
まじで
時間の無駄
267nobodyさん:2011/11/30(水) 21:18:28.91 ID:???
>>266
なぜ?
普通に使ってるが、特に問題はないぞ

Railsというなら同意だが
268nobodyさん:2011/11/30(水) 22:27:56.02 ID:???
ほんとに簡単な動作テストならWindowsでrubyが楽
269nobodyさん:2011/11/30(水) 23:35:21.54 ID:GwjhmrFG
まずWindowsを起動しなきゃならん…
270nobodyさん:2011/11/30(水) 23:46:15.93 ID:???
>>264
そんな人間はLinuxも使えないと思われ
271nobodyさん:2011/12/01(木) 00:36:39.73 ID:???
なんだかんだいってrubyてまだまだ不便だな。
一時的な祭りに便乗してるとしか思えない。。。
272nobodyさん:2011/12/01(木) 00:57:52.68 ID:???
windowsだとrspec関連が致命的に遅い。
spork使ってもrake specじゃ話にならない。
spork+rspecでまぁまぁ。guardまでは動かしたことがないから不明。
273nobodyさん:2011/12/01(木) 05:24:10.27 ID:???
だれか出たばっかのオーム社のrails本買った人いない?

技社のとどっち買えばイイのか迷ってるんだよね
オーム社の方は原作の評価がいまいちなのが心配
2つ買う金は無い。買った人いたら評価おせーて
274nobodyさん:2011/12/01(木) 08:08:14.11 ID:???
Windowsだとクラスのロードが遅いんだっけ。大量のクラスがあるRailsだとツライわな。

前にWindowsで開発してたけど、rails console開くだけでもう遅くて嫌になった。
VMにLinux入れてターミナル繋ぐ事で回避したが。
275nobodyさん:2011/12/01(木) 08:17:25.76 ID:???
>>265
windosて何?
276nobodyさん:2011/12/01(木) 08:27:19.08 ID:???
>>274
たしか、ファイル読み込み回りで遅いんだよな。
rubyの問題ではないとして取り合っちゃくれないけど。
277nobodyさん:2011/12/01(木) 16:15:25.88 ID:???
IOの問題なんだとすると、プリプロセッサみたいなのでロードするファイルを事前に1ファイルに固めたり出来れば
ちょっとはマシになるんだろうか。
278nobodyさん:2011/12/01(木) 16:38:27.98 ID:???
え、使ってる標準ライブラリとかgemも全部固めるの?
ロード順もあるからなぁ
279nobodyさん:2011/12/01(木) 16:49:55.95 ID:???
なんかそういうことやろうとして挫折した人の記事が見つかったわ
■[ruby]rubyでRubyVMの機能を利用してプリコンパイルしたソースをrequireする実験をしてみたい
http://d.hatena.ne.jp/ashel/20100505/1273073942
280nobodyさん:2011/12/01(木) 17:57:52.42 ID:???
Windowsで、railsだとnative extention周りがダメすぎて死ねるよな。
zlib、readline、openssl、sqlite3のgem導入は激しく苦労した。
特にmswin32だと枯れたバージョンでしか使う気になれない。
281nobodyさん:2011/12/01(木) 18:05:23.85 ID:???
日本人で環境を整えられる能力もった人は、かなりの少数なのに。。
railsと騒ぎまくってるだけの、なんちゃってエンジニアしかいないのが現状。
一時的な流行であって、落ちぶれるのは目に見えてわかるよ。
282nobodyさん:2011/12/01(木) 18:22:28.02 ID:???
まあえてWinサーバ上で運用する必要もないしな。
283nobodyさん:2011/12/01(木) 18:59:04.63 ID:???
>>281
ギャグで言ってるとしか思えない

Linuxを普通に使える人間なら、これぐらいの環境は整えられるし
それぐらいの人間は掃いて捨てるほどいる
284nobodyさん:2011/12/01(木) 19:11:10.54 ID:???
いつものスルー検定なんだからもうちょっと頑張れ
285nobodyさん:2011/12/01(木) 19:14:12.05 ID:???
というか、これぐらいの環境を整えられる程度の能力がない人間がPHPに
群がることによって、品質の悪いシステムが量産されるんだな

という内容のまつもとゆきひろ氏の記事を読んだことがあるが、まさに慧眼と
言わざるを得ない
286nobodyさん:2011/12/01(木) 19:33:58.37 ID:???
windowsの開発環境が業務で使えるレベルまで全く整ってないじゃん
なにいってんの?
287nobodyさん:2011/12/01(木) 19:39:04.55 ID:???
与えられたものを使うだけで
無ければ作ることをしないおまえらは
まつもとひろゆきの思想とは
全く違うのよ。
まつもとと同意見のように語る存在ではない。
根本的な思想がお前らと違うんだから。
288nobodyさん:2011/12/01(木) 19:42:53.48 ID:???
railsは重い原因は
まつもと、なんとかしてよ
というスタンスの奴が大多数だから
railsはいつまでも重いまま。
289nobodyさん:2011/12/01(木) 19:56:31.10 ID:???
時間かけて学習したんだから
わかっちゃいるけど簡単に捨れきれいない匂いがプンプンする。
290nobodyさん:2011/12/01(木) 20:04:05.87 ID:???
学習コストのリスクは時間よりもなによりも
あっさり捨てきれないところにある。
COBOLerみたいに。
291nobodyさん:2011/12/01(木) 20:07:28.14 ID:???
rails、そんなに重いかな?
最近のサーバ性能で、railsで捌き切れないくらいのアプリケーションを開発することなんてそんななさそうだけど
キラーアプリのredmineだって他のBTSに比べたら比較的軽い方だし。

JavaとHadoopで大規模をぶん回す必要があるっていうんなら問題だけど
そんな開発してる所なんて一部だろうし・・・サンデープログラマーとかはそんなことしないだろうし・・・
292nobodyさん:2011/12/01(木) 20:11:41.22 ID:???
Windowsの環境はなければ作るとかそんなレベルでなく、本当に整ってないぞ。
多分拡張ライブラリ(gem)のインストールにソースコードからコンパイルするプロセスが入っているのが
Windowsの思想と相容れないんだと思う。

gemさえきちんと入るんだったらphp.iniを置いてhttpd.confのどこそこを編集して〜〜〜なんて
手作業が入るPHPなんかよりずっとインストールが楽なんだけどな。
293nobodyさん:2011/12/01(木) 20:12:46.29 ID:???
流れ嫁
294nobodyさん:2011/12/01(木) 20:17:04.24 ID:???
ruby使いだすと中立的な考えができなくなるらしい
その理由は思想まで支配されてるから。
それがwindowsはどうでもいいという結果につながってる。
だからrailsは一時的な流行であり、今後は落ちていくだけ。
295nobodyさん:2011/12/01(木) 20:55:38.77 ID:???
実際、Windowsなんてどうでもいいしなぁ

仮想マシン環境が楽に作れる今となっては、開発においてもWindowsでないと
いけない理由がなくなってしまった

あ、.Net系は別な
296nobodyさん:2011/12/01(木) 21:19:17.67 ID:???
Windowsの良い所は、会社側が全部行動監視できるとこだったりする。
297nobodyさん:2011/12/01(木) 21:28:03.58 ID:???
仮想マシン環境でやるなら最初からUbuntuを開発OSにした方が楽じゃね?
298nobodyさん:2011/12/01(木) 21:32:02.62 ID:???
rubyて自分さえ楽できればそれでいいという考えが
参加者を減らし自分のクビしめてるよねw
299nobodyさん:2011/12/01(木) 21:52:31.34 ID:???
言語って、自分を楽にするためにあるんじゃないの?
300nobodyさん:2011/12/01(木) 21:53:26.02 ID:???
>自分さえ楽できればそれでいいという考え
これってWInユーザのクレクレ君態度のことに思える
301nobodyさん:2011/12/01(木) 22:04:04.94 ID:???
なんだか必ずレスが貰えるコピペ状態だな。
これだからIDのないスレは・・・・
302nobodyさん:2011/12/01(木) 22:12:38.24 ID:???
>>299
独創的なコードしか書かないタイプだな。やれやれ。
一人だけでプログラムするなら自分を楽にするという価値観で問題ない。
でも俺はあんたのコードは読みたくもない。
303nobodyさん:2011/12/01(木) 22:14:52.40 ID:???
言語は一種のコミュニケーション
機械とのコミュニケーションでもあるし
プログラマ同士とのコミュニケーションでもある。
自分だけの独り言ではない。
304nobodyさん:2011/12/01(木) 22:17:11.46 ID:???
Rubyは同じ処理を書くなら似たようなコードに収束するという特徴がある
PerlのようにTMTOWTDIだと読むのに苦労するが
305nobodyさん:2011/12/01(木) 22:19:57.93 ID:IufCzIua
>>304
Pythonに当てはまると思う。
RubyはどっちかというとPerl寄り。
306nobodyさん:2011/12/01(木) 22:21:48.02 ID:???
>>305
RubyはPython寄りだよ
推奨されないやり方は面倒に書かなきゃいけないようになってる
307nobodyさん:2011/12/01(木) 22:22:58.76 ID:???
Perl は後付けしたクラスの実装方法がなんかものすごく残念すぎた。
308nobodyさん:2011/12/01(木) 22:27:27.86 ID:???
PCスペックあがって仮想環境関係のソフトも整ってきたお陰で
色んな言語の環境まぜこぜにしなく済むようになったのはホント助かるよね。
309nobodyさん:2011/12/01(木) 22:31:58.82 ID:???
規模の大きい会社になると仮想環境はNGなとこが多いんじゃないかな。
そう考えるとwindowsの環境なんとかするべし。
310nobodyさん:2011/12/01(木) 22:37:15.08 ID:???
多くないよ
大手なんて自分でクラウド作ってるぐらいだし
311nobodyさん:2011/12/01(木) 22:44:34.84 ID:???
仮想環境のデメリットはあるだろ。ないわけはない
いい事しかいわない詐欺師かよ。
312nobodyさん:2011/12/01(木) 22:53:21.36 ID:???
普通の開発だとデメリットなんて殆どないんじゃないの?
例えば何がある?
313nobodyさん:2011/12/01(木) 22:56:38.43 ID:???
今夜も入れ食いだな
314nobodyさん:2011/12/01(木) 23:02:35.21 ID:???
世の中にメリットがあれば必ずデメリットは存在する。
いいことしか耳を傾けてないから
デメリットに気付いてないんだよ
洗脳されて頭の中がバラ色になっちゃってるんだよ。
315nobodyさん:2011/12/01(木) 23:06:39.49 ID:???
なるほど、具体的に挙げられないと。
使ったこと無いんじゃ無理ないよね。
316nobodyさん:2011/12/01(木) 23:08:51.47 ID:???
使ったことあるのにデメリットが一つもないなんて
なんも考えずに使ってるんだねw
317nobodyさん:2011/12/01(木) 23:11:45.57 ID:???
お前らいい加減スレチ
318nobodyさん:2011/12/01(木) 23:12:49.82 ID:???
>>316
で、デメリットは?
319nobodyさん:2011/12/01(木) 23:18:16.64 ID:???
>>318
俺は使ったことないからデメリットがわからないから
知りたいだけ
320nobodyさん:2011/12/01(木) 23:23:40.05 ID:???
知りたいなんて嘘つかなくていいのに。煽り合いしたいだけでしょ。
321nobodyさん:2011/12/01(木) 23:27:30.23 ID:???
君等せめてRailsに関する煽りあいしてくれよ。

仮想環境でもめるならこっちへどうぞ。
【仮想化】VMware/VBox/KVM/Xen【徹底比較】
http://hibari.2ch.net/test/read.cgi/software/1289732733/
322nobodyさん:2011/12/01(木) 23:29:59.53 ID:???
デメリット<メリットなら使いたい。
railsはいいよ!てのは、何かに洗脳されたのごとく山ほどきいたから
デメリットが聞きたいのだ。
323nobodyさん:2011/12/01(木) 23:52:40.88 ID:???
>>322
自分で使ってみりゃ分かるよ
324nobodyさん:2011/12/02(金) 00:05:30.12 ID:???
なんも考えずにつかって
いいよ!ていってるのはよくわかった。
325nobodyさん:2011/12/02(金) 00:14:57.26 ID:???
ん?仮想環境のメリット・デメリットの話じゃなかったのか?
326nobodyさん:2011/12/02(金) 00:40:11.00 ID:???
>>324
なんも考えずに使っていいって思えるならいいフレームワークってことだなw
327nobodyさん:2011/12/02(金) 03:27:07.95 ID:???
「3000円で環境構築してください君」がまた暴れてるのか
そろそろ彼は死んだ方がいいな
多分今後何十年も生きてても意味が無い
社会になんら貢献せずに、自分の能力不足を棚にあげてRails批判して心のバランスを取ろうとする日々
生きてる価値が本当に無さ過ぎて哀れになってくる
お母さんも彼を産んだ事を後悔してるだろう
328nobodyさん:2011/12/02(金) 07:33:52.50 ID:???
一時期Win上のLinuxで開発してたが単なるrailsアプリだと特に問題なかったな。
デバイス叩くとかタイミングがシビアなシステムぐらいじゃね?仮想環境上で作りにくいのは。
329nobodyさん:2011/12/02(金) 08:44:10.38 ID:???
そんなことよりアジャイル本の第4版がでたけどどうよ?
330nobodyさん:2011/12/02(金) 10:41:37.06 ID:???
なんか久しぶりにここで人間が会話してると思ったら
煽りあいかよ
botの方が100倍マシ
331nobodyさん:2011/12/02(金) 11:45:01.04 ID:???
>>330
最近変な人が常駐するようになったのよ
Rails環境構築できなくて八つ当たりする人
332nobodyさん:2011/12/02(金) 12:35:01.10 ID:???
日本語でrspecについて詳しく書いた書籍、webはないですかね。
英語書籍、webで読んではいるけど調べ物するたびに疲れる。
333nobodyさん:2011/12/02(金) 12:56:22.45 ID:???
>>332
るびまでは物足りなかったのかな?
334nobodyさん:2011/12/02(金) 13:15:05.62 ID:???
>>333
そのあたりは大抵読んだ。cucumberなども読んでる、書籍含めて。
どっちかというとBDD関連での不満かな。
自分でテスト書いているんだが、
書いているうちにどの程度の粒度でかけばよいかの基準に悩む。

例えば、varidate宣言をいくつもしてあるモデルがあって、
動作することは分かっている。
失敗した場合、ridirectやrenderなどの共通処理に飛ぶ場合、
それぞれのvailidate処理についてテストを書くべきかどうかなど。
railsでそういったチュートリアルは簡略化された記述が多いからねぇ。

他人のgithubの差分なんかを見ているが、
そんなに細かくcommitしている人もいないし
人によって違う(あたりまえだけど)から、
自分なりの基準を決められるようになりたいな、と。


335nobodyさん:2011/12/02(金) 13:17:58.65 ID:???
携帯で書いていたら滅茶苦茶だな。
validationでした。variとかvailとかすみません。
336nobodyさん:2011/12/02(金) 13:39:53.00 ID:???
不安がある部分に書く感じ。
この処理ちょっと不安だなと思ったら書くようにしてる。

モデルのspec厚めに書いてても、コントローラはそれらを複合的に使ってたりするから、組み合わせ方間違えばバグる訳で。

あと、コントローラのテストは攻撃される事を考えてやってる。

validation通る、通らないで処理が分岐みたいのも一応気になるとこには書いてるかな。
337nobodyさん:2011/12/02(金) 14:02:14.97 ID:???
るびま(だったかな?)もそうですけど、
「テストが仕様」という記述をよく見るので

「仕様書なら、かなり細かく書くよな」
「テスト項目のvalidationってともかく全部網羅するよな」

という考えが頭の中で回ってしまいます。

とrspecでは細かく書いて、cucumberで大まかなシナリオかいてとやっていると
テスト書いている時間のほうが長くなり、仕様変更する度にうあー!となります。

問題として、自分のテストコードの書き方があるんじゃないかと。
DRYを目指して、仕様変更に対応しやすいコードを書いたりが下手なんだと思います。
Web上にアップされているリファクタリングを見ていると、
結構目から鱗状態でポロポロ落ちていくのを実感しますよ。

>>336
もう少し気楽にとらえてみる事にします(仕事以外では)
338336:2011/12/02(金) 14:23:11.52 ID:???
>>337
自分は仕事でも 336 に書いた感じ。
全体の工数にもよるから、テストを十分に書ける案件と、そうでもない案件がある。
それで粒度を変えてる。

validationも気になるなら書いてる。普通に境界とか気にしながら。
でもvalidationに限らず、他の人のを見ると、たまにRailsやプラグインの機能のテストになってる人もいるから、そこは指摘したり。

テストが仕様になるのはその通りだと思う。
メッセージを何語で書くのかという問題と、メッセージに書いてある事とテストの実装に齟齬が無いかという問題(この辺も最近のるびまに書いてあったはず)もあるけど、場合によっては日本語でほとんどメッセージ書いて、テスト結果をテキスト出力で残したりする。
もちろん非エンジニア向けで。
339nobodyさん:2011/12/02(金) 23:03:35.82 ID:???
みてないけど、ニコ動にrspec の動画がいくつかあった
英語の講演もあったと思った
340nobodyさん:2011/12/03(土) 03:03:27.98 ID:???
>>329
おれはすぐ買うよー
341nobodyさん:2011/12/03(土) 08:41:27.79 ID:???
おれは要らんかな。入門書だし。
紙版を少し立ち読みしたけど薄くなったね。

完全な初心者には、あれだけじゃキツイ。
アメリカのAmazonのレビューも分かるわ。
買うとしたらPDFのが良いかとは思う。
342nobodyさん:2011/12/03(土) 20:45:30.51 ID:???
初心者は技術評論社の方買ったほうがよさそうだね
343nobodyさん:2011/12/04(日) 00:45:30.72 ID:???
>>342
初心者ならアジャイル本のほうがおすすめ
344nobodyさん:2011/12/04(日) 01:27:06.38 ID:???
>>343
新しいアジャイル本、読んでみた?
なんか微妙に説明が足りないぞ。
初心者はそれでハマりそうな気がする。
あちこち端折られてる感じ。
分かってる人なら良いが。
345337:2011/12/04(日) 07:33:01.43 ID:???
>>339
ありがとうございます、アカウントとって見てみる事にします。
346nobodyさん:2011/12/04(日) 08:04:22.37 ID:???
新しいアジャイル本微妙なの?
第二版を学生時代に図書館で借りて、完璧に近い内容だったように記憶してる

中級者ぐらいが知識を深めるのに最適な日本語書籍(3.0以降対応)って無いのかな
347nobodyさん:2011/12/04(日) 09:01:00.85 ID:???
>>344
ごめん、読んだのは第3版だったわ
辞書的な使いやすさじゃなくて、初心者のチュートリアル的なとっつきやすさでは、
アジャイル本>HEADFIRST >技術評論社
だった
個人的な意見だけど
348nobodyさん:2011/12/04(日) 09:39:14.58 ID:TN6yu8qJ
アジャイル本ていう表現初めてみた。 AWDwRのこと…だよな?
349nobodyさん:2011/12/04(日) 11:22:33.09 ID:???
amazon.com のレビュー見て。
大体そんな感じ。

「良い本だったのに、何があったの?」
「ガッカリだよ」
「初心者向けじゃないね」
「もうRails使えるからいいけど、初心者の時を思い返すとこれはないわ」
「Webで予め学習が必要」

みたいな。
350nobodyさん:2011/12/04(日) 13:16:18.56 ID:Zd1Rckh+
ARでenumカラム正式にサポートしていないのってなんでなんでしょう?
varcharカラムを擬似的にenumっぽく使えるgemはあるみたいなんですが、
インデックス貼って使いたくなったときはvarcharよりenumの方が速く検索できますよねぇ?
351nobodyさん:2011/12/04(日) 13:40:32.03 ID:TN6yu8qJ
ARアダプタの存在するDB全部には存在しないからじゃない?
352nobodyさん:2011/12/04(日) 14:45:24.32 ID:???
初心者向けはrails guideでいいんじゃね?
無料だし。
353nobodyさん:2011/12/04(日) 15:00:00.34 ID:???
>>350
rubyで定数定義して使えばいいだけだろ
354nobodyさん:2011/12/04(日) 16:39:23.00 ID:TN6yu8qJ
>>352
それを言うと、「英語出来ません ;_; 」と言われて閉口する。

昨日 a_matsuda も「勉強してください」って言ってたぞ。
355nobodyさん:2011/12/04(日) 18:57:25.37 ID:???
MySQLにはDDLトランザクション処理がないので、
http://www.infoq.com/jp/news/2009/05/heroku-provisionless-revolution
356nobodyさん:2011/12/04(日) 21:08:19.07 ID:???
MySQL :: MySQL 5.1 リファレンスマニュアル :: 12.4.2 ロールバックできないステートメント
http://dev.mysql.com/doc/refman/5.1/ja/cannot-roll-back.html
357nobodyさん:2011/12/04(日) 21:20:16.15 ID:???
Rails3.1.3のフィクスチャデータの質問です。
acc_num: stringなカラムに
rec1:
acc_num: '2011E-0003'
というデータをrake db:fixtures:loadで読み込ませると、勝手に'2.011'にしてくれます。
たまたま実数リテラルになっているので仕方がないのかもしれませんが、
2011年のEクラスの3番目の受け入れ番号なので、できればこのフォーマットの文字列を
そのままacc_numカラムに入れたいのです。なにか方法は無いでしょうか。
358nobodyさん:2011/12/04(日) 22:23:54.34 ID:???
acc_num: !str '2011E-0003'
359nobodyさん:2011/12/04(日) 23:22:43.89 ID:TN6yu8qJ
YAMLシンタックスの質問だな。
360357:2011/12/05(月) 10:19:24.91 ID:???
>>358
ありがとうございました。
>>359
その通りですね。rails fixtures scientific notationなどと検索しても出て来なかったのも当然です。
361nobodyさん:2011/12/06(火) 18:23:51.40 ID:???
>>270
は?ubuntuなんかパッケージ管理ツールから全自動だろ。
馬鹿かお前。てかwindowsの話してんのになんでlinuxがでてくる
362nobodyさん:2011/12/06(火) 18:50:49.63 ID:???
ロングバックパス
363nobodyさん:2011/12/06(火) 19:20:44.17 ID:???
これが噂の継続って概念か。
364nobodyさん:2011/12/06(火) 22:40:47.04 ID:???
だれがうまいこと言えといった
365nobodyさん:2011/12/07(水) 11:01:25.63 ID:???
What's new in Edge Rails: EXPLAIN

Posted by fxn December 06, 2011 @ 09:20 PM

There are some new features related to EXPLAIN in the forthcoming Ruby on Rails 3.2 we'd like to share:

http://weblog.rubyonrails.org/2011/12/6/what-s-new-in-edge-rails-explain
366nobodyさん:2011/12/07(水) 11:38:44.35 ID:???
367nobodyさん:2011/12/07(水) 23:48:36.03 ID:3l+6U4x7
ガラケーからスマホへの以降案件で発生した問題ですが
パズルの問題だと思って答えてみてください

1. PHPでできたガラケーの案件がある
2. 現在あるテーブルのうち半分位はデータを同期しないといけない
3. 機能はスマホとガラケーでほぼ同じ、ただしビューは今後大きく乖離していくと思われる
4. PHPの旧案件はメンテナンス性が悪く、保守にRailsでの管理の倍近い時間がかかっている

・ガラケー案件なのでデータがsjisで保存されています、スマホ版ではUTF-8でガラケー版ではSJISで取り出す
・ガラケーならXHTML1.1Basic、スマホならHTML5での出力をしないといけない

こういう状態なのですが、次の4つの選択肢でどれを選択するでしょうか?

1. ガラケー版もRailsでリライト。
2. スマホ版もPHPの旧フレームワークでこれからも頑張る
3. ガラケー案件にWebAPIを追加。DBは分けてスマホはRails
4. 同じDBでにスマホ版のためのテーブルを追加、スマホはRasil
368nobodyさん:2011/12/08(木) 00:01:12.45 ID:???
マスタ系のデータなら自分なら迷わず↓
5. WebAPI は作らずガラケーDB直読みのバッチプロセスで同期を取る/DBは分離でスマホはRails
369nobodyさん:2011/12/08(木) 00:07:18.52 ID:???
アクセスがどれくらいあるのか、予算や時間はあるのか、告知したらサービス停止可能なのか等によりけり。

予算無いなら 3
予算あって、停止可能なら 1

でも、1もDB移行とかあってヤダなという感じ
370nobodyさん:2011/12/08(木) 01:12:40.91 ID:???
疎結合のための Web API
DB 直接叩かないのはサービス間の密結合を避けるためなんです。疎結合。
http://d.hatena.ne.jp/naoya/20060228/1141094456

結論:内部WebAPIによりフロントエンド/バックエンド化
http://d.hatena.ne.jp/kazuk_i/20090117/1232191936


独自フレームワークはやめよう
作るのが難しい、メンテナンスが難しい、ということに加えて、もう一つの問題点は、新しく加わった人の教育コストが高くなるということがある。
まず、外の資源(ドキュメント/本/Google検索)が使えないので自前ですべて教育をしなくてはならない。
http://blog.madoro.org/mn/84
371nobodyさん:2011/12/08(木) 02:41:00.29 ID:???
ふつうにphpをリファクタリングすればいいんじゃないの
372nobodyさん:2011/12/08(木) 03:13:03.63 ID:???
373nobodyさん:2011/12/08(木) 03:13:44.24 ID:???
最も基本となる開発サイクルは以下のようになる。
失敗するテストを書く
できる限り早く、テストがパスするような最小限のコード本体を書く
コードの重複を除去する(リファクタリング)

テストの実行環境ツールであるxUnitでは、テストの失敗を赤いバー、成功を緑のバーで通知するため、上記のサイクルは Red/Green/Refactor と称される。
374nobodyさん:2011/12/08(木) 06:30:03.62 ID:???
もうPHPのリファクタリングしたくないのかもね。
古くなったのを捨てて、新しく作り直したいというのは分かる。モチベーション的に。
375nobodyさん:2011/12/08(木) 07:42:43.24 ID:???
railsの作者もJAVAやPHPでは綺麗なコードが書けないからruby選んだっていってるしな
376nobodyさん:2011/12/08(木) 08:25:03.90 ID:???
モチベーション的にはいちから同じものをrailsでテスト組んで作り直す方がだるそう
完全に動いてるコードがあるなら、この場合のリファクタリングは共通化できる部分(モデル)とできない部分(ビュー)の分離が主だから手間かからなそうなイメージ
まあ実物みないとなんともだけど
377nobodyさん:2011/12/08(木) 09:15:39.46 ID:???
今後もメンテが続くなら、テストを書いておくのは絶対役に立つ
378nobodyさん:2011/12/08(木) 09:43:10.12 ID:???
レガシーコード改善ガイド面白かったよ。
379nobodyさん:2011/12/08(木) 11:10:52.17 ID:???
CakePHPからこれに移行しようと思うんだけど
ひと通り勉強するには
新しく出たアジャイル本と技術評論社の本どっち買えばいい?

本とか買わないで公式のガイドだけでも大丈夫?
380nobodyさん:2011/12/08(木) 12:54:46.36 ID:???
開発段階の初期って、仕様が変わりまくるからテスト書いてられなくない?
結局、ある程度完成したら その確かに動いているコードのためにテスト書いて、
保守・変更に備える、という風になってしまう。
BDDもTDDも全然できん。。。
381nobodyさん:2011/12/08(木) 15:58:13.96 ID:???
変わりまくる仕様をテストで明文化しろってことでしょ。
脳内で仕様決めながらトライアンドエラーでやってるとテスト書けなくなるのは確か。
382nobodyさん:2011/12/08(木) 16:18:10.49 ID:???
そんな段階でいちいちテストコードを書いている時間がもったいない。
tddが適用できるのはそこじゃなく、仕様がある程度固まってきて、ライブラリを作ったりapiを作るとき。それと複雑だったりクリディカルな箇所を作るとき。
383nobodyさん:2011/12/08(木) 16:31:57.40 ID:???
クリディカルってどういう打ち間違いするとそうなるんだろう
384nobodyさん:2011/12/08(木) 16:38:23.79 ID:???
打ち間違いじゃなくてクリディカルなんだよきっと
385nobodyさん:2011/12/08(木) 22:45:49.21 ID:???
かな入力なら案外あるのかもしれんぞ
386nobodyさん:2011/12/09(金) 00:25:15.46 ID:???
たぶんアジャイルとかTDDとかいうひとは学生時代とかにある程度の試行錯誤は済ませていて、プログラマーというかコーダー主導で提案していくのが無理がない、デスマになりにくいってことじゃないかな
ただ、自分なんかは納品するコードは試行錯誤のあと一から清書するようにしていて、そのときにTDDとかを取り入れられないかなと妄想してる
387nobodyさん:2011/12/09(金) 01:23:33.03 ID:???
学生には分からんと思うが。
仕事で書くのと全然違うし。
予算や時間、仕様、お客さんの意向なんかについても全く考えないでしょう。
388nobodyさん:2011/12/09(金) 02:32:37.19 ID:???
そんなん言い訳だな
俺は大半の案件でテストを書いてるが、それで問題になったことはほぼない
(ちなみに数人〜数十人のプロジェクトだが)
むしろメンテ段階で「書いててよかった」という方が多い

Railsは案件自体が少ないが、少なくともJavaの世界はテストは当たり前だぞ?
389nobodyさん:2011/12/09(金) 09:23:55.85 ID:???
テスト書かない文化のところはほんっっっっっっっっっっとに書かないからな。
そういうところでは一人だけ頑張って書いても手間が増えるだけになるから
そういう結論に至るのもやむなしと言える。
390nobodyさん:2011/12/09(金) 11:47:02.87 ID:???
Railsは数十人もいらんけどな。
多くて5,6人、普段は1人から3人くらい。

テスト書いてて、仕様変更が多すぎてテスト無駄になってキツイとかいうのは、仕様決める奴の問題。

プロジェクトに後から入ったり、改修で渡されたりした時に、テスト無いと本当に困る。
391nobodyさん:2011/12/09(金) 11:52:05.50 ID:???
仕様書とテストの内容が近くなればなるほど
くるくる仕様変更されても耐えられるようになるんだよね。

仕様が口頭や脳内のみで決まる文化の場合は知らん。
392nobodyさん:2011/12/09(金) 23:07:27.41 ID:???
確かにJavaの世界だと、不必要に人数増やすのが当たり前だよな。
明らかにこいつら要らないだろってくらい人が無駄にいたりする
393nobodyさん:2011/12/10(土) 06:42:22.50 ID:???
開発Line数の規模に応じた予想バグ数が出ていないとウォーターフォールの次の段階に進めない
っていう開発体制のところだと、事前にテストを書いてエラーをすべて潰した場合
品質保証部が単体テストの終了をどう判断したらいいかわからなくなる
394nobodyさん:2011/12/10(土) 09:08:52.85 ID:???
>>393
なんかこれ思い出したわ。
↓のHaskellのとこな。
http://d.hatena.ne.jp/shunsuk/20100928/1285677528
395nobodyさん:2011/12/10(土) 13:01:18.16 ID:???
ウォーターフォールなんてさすがにもうやってるところないよな・・・
396nobodyさん:2011/12/10(土) 14:25:58.23 ID:???
SIerを舐めるな
397nobodyさん:2011/12/10(土) 17:30:55.39 ID:???
>>393
テストの量で判断すりゃいいだけじゃん
398nobodyさん:2011/12/10(土) 20:01:04.30 ID:???
>>397
予想/摘出バグ数でしかテストカバレッジを判断できない人たちにうまく説明できない
399nobodyさん:2011/12/10(土) 22:31:41.43 ID:???
カバレッジツール使え
400nobodyさん:2011/12/10(土) 22:59:46.17 ID:???
品質保証部の仕事がなくなるからムリ
401nobodyさん:2011/12/11(日) 00:28:47.61 ID:???
どこぞの公務員もビックリな理論だなw
402nobodyさん:2011/12/11(日) 00:56:16.39 ID:uh1drSU/
すいません。教えてください。

rails3でscssを使用して/asset/images/画像.jpgを使用する際に
CSS上に「<%= asset_path '画像.jpg' %>」と記載すると

Invalid CSS after "...ge:url(<%= asse": expected expression (e.g. fr, 2n+1), was "<%= asset_path ..."

エラーになります。

application.cssの「= require_self」や「= require_tree」はコメントのままですが
こちらが影響していますでしょうか。


403nobodyさん:2011/12/11(日) 01:14:46.68 ID:???
css内にerbを書くとはどういうことだ
404nobodyさん:2011/12/11(日) 01:19:10.34 ID:uh1drSU/
すいません。下記のような感じです。


width:100%;
color: #ffffff;
font-size: 36pt;
background-image:url('<%= asset_path 'h1_bg.png' %>');
background-repeat:repeat-x;
padding-left: 20px;
405nobodyさん:2011/12/11(日) 01:21:52.28 ID:???
だから、css内にerbを書くとはどういうことだ
406nobodyさん:2011/12/11(日) 01:27:02.05 ID:uh1drSU/
間違ってましたか・・・

ちなみに
「アプリ名」/app/assets/images/h1_bg.pngファイルを背景にセットする場合は
どういう方法で記載すればよろしいでしょうか。
407nobodyさん:2011/12/11(日) 01:33:13.25 ID:???
Rails公式ページのRails GuidesのAsset Pipelineを読めば分かるよ
408nobodyさん:2011/12/11(日) 01:55:34.66 ID:uh1drSU/
一応読んだ結果でした。

・config/application.rbに下記を追記
config.assets.paths << Rails.root.join("app", "assets", "flash")

・application.html.erbに下記を確認(アプリ作成時に自動生成)
<%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>

・CSSには下記を追記
.class { background-image: url(<%= asset_path 'image.png' %>) }
※でもココは記載方法が誤ってるとのこと

・application.cssの下記をコメントアウト
= require_self
= require_tree

おそらくcssがコンパイル対象に入ってないので<%%>が動作していない
感じですよね。。
何か設定が漏れてるか根本的な何かが違うのか・・・・・

ちなみにWebrick上です。
409nobodyさん:2011/12/11(日) 01:59:41.26 ID:???
読んだ結果とは思えない
410nobodyさん:2011/12/11(日) 01:59:57.88 ID:V77chh0X
asset_path は scssの関数じゃなくてRubyなのね?
cssの中にerbを書きたければ拡張子を連結すれば?
css.scss.erb みたいなことになりかねないがw
411nobodyさん:2011/12/11(日) 02:03:29.88 ID:uh1drSU/
もういっぱいいっぱいです。。。
412nobodyさん:2011/12/11(日) 02:05:15.40 ID:???
もう一度Rails Guidesを嫁
話はそれからだ
413nobodyさん:2011/12/11(日) 02:10:52.51 ID:uh1drSU/
すいません。
一応css.scss.erbにしたらエラーは解消されましたが
画像は適用されなかったです。

background-image:url('<%= asset_path 'h1_bg.png' %>');

background-image:url('<%= asset_path 'images/h1_bg.png' %>');
両方試しましたがダメでした。

asset_pathにはassets/が入ってました。(当たり前か、、、)
414nobodyさん:2011/12/11(日) 02:12:32.09 ID:???
本当に読んでる?
だったらGuidesのどの項目にこう書いてたからこのように試しました、みたいな
話があるはずじゃん?
415nobodyさん:2011/12/11(日) 02:26:13.23 ID:uh1drSU/
いや408がGuidesの記述順を意識した投稿でした。

ていうか、無事にできました。
background-image:url('<%= asset_path 'h1_bg.png' %>');
の記述方法で出来ました。

大変申し上げにくいのですが、imagesフォルダに画像が入ってなかった
ってお粗末な感じでした。

てか414うっせーんだよ!
英語のサイトなんかそんな簡単に読めるかっツーの
416nobodyさん:2011/12/11(日) 02:29:05.25 ID:???
英語読めないんならRailsやめた方がいいよ
煽りじゃなく、実際にそうだから
417nobodyさん:2011/12/11(日) 03:14:06.04 ID:V77chh0X
418nobodyさん:2011/12/11(日) 07:19:24.13 ID:???
speakerdeck流行ってるね
どうでもいいけど
419nobodyさん:2011/12/11(日) 10:34:28.96 ID:???
新規アプリケーション作成した時のトップのerbってどこにあるのでしょうか?


420nobodyさん:2011/12/11(日) 10:38:45.08 ID:???
トップは自分で指定しないとだめ。
root :to => 'hogehoge#index' とか自分で表示したいモデルのアクションを指定してください。
もともとある public/index.html を消さないと表示されないので注意。
421nobodyさん:2011/12/11(日) 22:24:26.01 ID:???
俺はapplication.erbの意味かと思った。
yieldしてる所といえば、関数的なトップかと。
422nobodyさん:2011/12/12(月) 09:21:02.05 ID:/L+tQXzJ
207 :nobodyさん:2011/11/26(土) 06:02:18.81 ID:???
絶対前スレのこの人だと思う
散々質問しておいて結局自力で環境すら構築できなかったのでさじを投げて3000円出すから環境作ってくれ発言して消えた人
改行の仕方、句読点の使い方が全く同じ
あれから二ヶ月を経てアンチRailsとなって帰ってきた模様 哀れですね

461 nobodyさん[sage]投稿日:2011/09/12 03:18:03 ID:???
Apache
MySQL
PHP(php-mysql)
phpMyAdmin
sqlite3
Ruby1.9
rails3.1
gem-mysql2

これらが干渉せずに問題なく動くよう
CentOS5.6に入れたいと思います。

しかし何度試しても必ずどこかで引っかかります(特にphpMyAdminの部分)
初期状態のCentOS5.6をお持ちの方で上の条件をクリア出来る方いたら
手順を書いていただけませんか?
こちらでも試してみて、それらが問題なく動くようであればpaypal経由で少ないかもしれませんが3000円を差し上げます。

お時間ある方で試してもいいよ!という方いましたら
よろしくお願いします。
423nobodyさん:2011/12/12(月) 17:00:28.37 ID:Y3Ov/unG
知っていたら教えてください。
Deviseでメールアドレスを変更したときにもsign_up時と同じようにメール確認したいのですが何かいい方法ありませんか?
424nobodyさん:2011/12/12(月) 19:36:00.31 ID:???
Devise読んで同じようにする。
または自分でそのように作る。
前にも同じ事質問してた人いたな
425nobodyさん:2011/12/13(火) 14:33:11.22 ID:???
426367:2011/12/15(木) 15:26:07.13 ID:KwvvVU/T
ども、お世話になりました
直接の上司&マネージャーと相談した結果
1.まずスマホ版をRailsで開発(set_table_name地獄!)
2.JPMobileに頼ってガラケー版もRailsで統合
を3ヶ月くらいかけてやる予定になりました

それで、追加で質問なのですが
元々PHPで作っていたフレームワークで<DOCOMO></DOCOMO>とかの独自タグがあるので
レンダリングされる前に
<DOCOMO>→<% if request.mobile.is_a?(Jpmobile::Mobile::Docomo) %>
とかのerb向けのコードに置換とかをしてくれる方法とかはないでしょうか?
render関数の中のコードとかを読んでいましたが、いまいち隙間なさそうな感じでしたので

ダメならsedで置換しますけど、<DOCOMO>タグとか、これはこれで可読性高いので、出来ればこのまま使い続けたいので
427nobodyさん:2011/12/15(木) 21:21:54.63 ID:ezOoglIj
Rails3.1 だと、適当な拡張子(.ourtemplate みたいな)をデッチあげて
show.html.erb.ourtemplate のうようなビューにしとくと、css.scssや
js.coffeeの処理と同様に、後ろ側の拡張子から順に指定のハンドラで
変換を施していくことが出来るよ。
Sprocketsに拡張子を登録しなきゃならないけど、たぶんsass-railsとか
見れば似たような処理をやってるはず。
428nobodyさん:2011/12/16(金) 12:28:44.59 ID:???
429nobodyさん:2011/12/16(金) 23:09:55.22 ID:???
このスレって業務で使用してる人が多いよね
430nobodyさん:2011/12/16(金) 23:12:41.32 ID:???
まだ趣味でしか使ってない
431nobodyさん:2011/12/16(金) 23:21:57.66 ID:JsvWUNfN
業務で2系、趣味で3系、そして業務のほうで、まだ使えない機能に出くわしてムキーとなる。
432nobodyさん:2011/12/16(金) 23:24:44.50 ID:???
Redmineとイントラ用のちょっとしたツールぐらい
お客さん向けのはふっるいStrutsのシステムの保守というお寒い職場なのでお察し
433nobodyさん:2011/12/17(土) 09:48:50.01 ID:???
業務では1.2.6、2.3.15、2.3.11、3.0.10で動いてるシステムを運用してる。
今は新しい案件が来たら3.0.10で作ってる。
3.1はまだ触ってないので、趣味である程度慣れてから業務に使う予定。
434 忍法帖【Lv=40,xxxPT】 :2011/12/17(土) 12:49:55.56 ID:???
ほにほに
435nobodyさん:2011/12/17(土) 17:16:49.33 ID:???
> <DOCOMO></DOCOMO>
DRYML っちゅー Rails用の XML風のテンプレートエンジンもあるよ。
独自タグも簡単に作れる。
<def tag="DOCOMO">
<do param="default" if="&request.mobile.is_a?(Jpmobile::Mobile::Docomo)"/>
</def>
Hobo と組み合わせずに使う人はあまりいないみたいなので
https://github.com/tablatom/hobo/pull/32
こんな感じだけど。
436nobodyさん:2011/12/17(土) 23:58:38.85 ID:???
【ウェブアプリケーションという不幸 】

現在、多くのプログラマ(素人)がウェブアプリケーションというものがベストな正しい方向だと勘違いしている。
ソフトウェアの作るにおいてそのアプリケーションに応じた状態遷移を実装するというのは基本中の基本である。
その点においてウエブブラウザというある状態遷移が実装されているアプリケーションの上に
また別のアプリケーションを実装するのは論外である。
そこまでするなら普通にアプリケーションを実装してダウンロードして使ってもらえばいいのである。
ウェブアプリケーションとは虚構にしか他ならない。
ウェブアプリケーションを作ろうとしているあなた。
今すぐ普通のアプリケーションとし設計し始めてはいかがだろう。
そうすればきっと後悔しないですむ。

HTMLやHTTPを悪者にはしていない。
TCP/IPができあがり、その応用として、ファイルを送ったりするようになった。
ファイルの中身のテキストにデータ構造をもたせ、それはつまりツリー構造なわけだが
その実装としてのハイパーテキスト、つまりHTMLという送る側と送られる側で決め事(プロトコル)
をつくり、画像や音楽など表現の幅を広げることは当然の成り行きだっただろう。
そして、その送る側としてのHTMLファイルサーバ、つまりWebサーバ、送られる側としてのプロトコルの解釈・表示系としての
ブラウザというアプリケーション。
ここまではいい。
だが、そこから先が素人の発想というか、いそがばまわれを忘れた者の愚かな発想。
つまりブラウザ上で、アプリケーションを動かすという発想なのである。
ブラウザというのは、おくられてきたステートレスな通信内容の一瞬の表示手段でしかない。
つまりアプリケーションのためのひとつのパーツなのである。
Windowsでいえば、コントロールのひとつ。(実際WebBrowserというコントロールがある。)
JavaならWebClietnだ(これは、ブラウザではないが。)。
包含関係が逆なのである。
ブラウザ上にアプリケーションを作るのは愚かなブームである。
437nobodyさん:2011/12/18(日) 00:03:16.19 ID:???
>>436
「自分は次代の新しいルールに柔軟に対応することができないレベルが低いエンジニアだ」

まで読んだ。
438nobodyさん:2011/12/18(日) 02:58:31.55 ID:???
>>436 の言ってることは微妙だが、しかしいかにも無理矢理、って感じのひどいアーキテクチャがまかりとおっているのは事実。
たとえば、ローカルの画像を表示するのにその画像をサーバーにアップロードする必要があるみたいな。
RASISや最小特権原則の観点からみてもアホすぎるし、
それによっておこる問題解決のためにさらに新しいセキュリティモデルを導入するとか
かなり本末転倒なことがかなり大真面目に行なわれている。
これが、たとえば共有分散ストレージ上に構築された次世代の分散OSの上で行なわれる、
とかそういう話なら話はまったく別なんだが、そういう訳でもなく、
ただWebというプラットフォームをいかに商業的に囲い込むかという目的のために
Webの理想を堕落に追いこみ、その堕落を進歩と呼び替えて煽ってる。
ただまあ、半分はエンドユーザーが望んでこういう状況になってるってのは事実なんだが。
439nobodyさん:2011/12/18(日) 04:37:09.02 ID:???
煽りでなく、webの理想を知りたいんだか、少し語るか英語でもいいので参考文献を挙げてくれないか。
440nobodyさん:2011/12/18(日) 09:45:54.32 ID:???
セマンティックWebとかそっち界隈の人なんじゃね
441nobodyさん:2011/12/18(日) 10:13:38.95 ID:???
分散オブジェクトとかCORBAとかの界隈の人と見た
442nobodyさん:2011/12/18(日) 20:27:21.80 ID:9qzT/sR+
Chrome OSなら問題なしじゃん
443nobodyさん:2011/12/18(日) 22:59:10.40 ID:u1EHSSTO
また、同じだな
たのしいRubyを30Pで挫折する
以前も、たのしいBasicとか
たのしいフォートランとかたのしいコボルとかたのしいC++とかあったよな
444nobodyさん:2011/12/19(月) 09:17:09.26 ID:???
> たとえば、ローカルの画像を表示するのにその画像をサーバーにアップロードする必要があるみたいな。

?データをクラウド上にバックアップできる、というのがWebアプリの基本なんだからアップロードしなくちゃ何も始まらないだろ??
445nobodyさん:2011/12/19(月) 09:26:48.19 ID:???
多分、表示することだけが目的なケースでもネットワークにアップロードするところから始まるのが糞って言いたいんだと思うけど
そういう場合は大人しくローカルのアプリ使ってると思うけどなあ。
446nobodyさん:2011/12/19(月) 10:14:17.44 ID:???
>>443
それで一旦挫折たけど今はバリバリ使えてる身から言うと、あんなものから入るのはつまらなすぎるよ。なにかソフトを作りあげる本をまずやって見て、それからリファレンス的に楽しいrubyを見る方がずっと良い。
今ならrailsからはいるのがいいかもね。
447nobodyさん:2011/12/19(月) 14:16:39.26 ID:???
何か作ると覚えるの速いよな。
ある程度動くのができてくると愛でるようにコードをリファクタリングするため
色々と細かい勉強にも身が入る。
448nobodyさん:2011/12/19(月) 16:57:21.48 ID:???
そうそう、まずは本の通りでいいから物を作るのがいい。そこから興味が広がる。
それと、プログラミングは入門の敷居がすごく高いから、出来なくても向いていないと思う必要はない。
楽しいRubyは、phpとかからきた人にRubyの作法を覚えてもらうための物だと思っている。
449nobodyさん:2011/12/20(火) 09:14:42.22 ID:???
ど素人が手を出してインストールでつまづく
今の私です^o^
1ヶ月インストールで悩むとかどんなんやねん
450nobodyさん:2011/12/20(火) 09:22:41.49 ID:???
Windows環境でならわからんでもない。
451nobodyさん:2011/12/20(火) 10:05:22.61 ID:XOsyk8U0
まあプログラミングなんてそんなもんだよ
気長にのんびりやるしかない
いつのまにかわかるようになってる
452nobodyさん:2011/12/20(火) 10:31:42.53 ID:???
詰まったら気分転換で別のことやるのもいいね
453nobodyさん:2011/12/20(火) 16:27:54.30 ID:LGuFgDfb
Rails 3.2 RC1: Faster dev mode & routing, explain queries, tagged logger, store
http://weblog.rubyonrails.org/2011/12/20/rails-3-2-rc1-faster-dev-mode-routing-explain-queries-tagged-logger-store
454nobodyさん:2011/12/20(火) 16:37:00.24 ID:LGuFgDfb
Rails 3.2.0 Changelogs ? Gist
Deprecated:
set_table_name
set_inheritance_column
set_sequence_name
set_primary_key
set_locking_column
https://gist.github.com/1472145
455nobodyさん:2011/12/20(火) 17:20:25.85 ID:???
マスタ/スレーブの冗長化の基本は4台1セット
http://d.hatena.ne.jp/uncafe/20110919

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


456nobodyさん:2011/12/20(火) 18:59:26.94 ID:???
>>443
たのしいCOBOLは無い
457nobodyさん:2011/12/20(火) 22:56:29.34 ID:???
そもそもCOBOLが楽しいわけがないな
458nobodyさん:2011/12/21(水) 04:04:56.01 ID:???
Rails 3.2.x is planned to be the last 3.x release branch.
rails/master is now 4.0.0.beta and will only support Ruby 1.9.3+.
Farewell 1.8.7!
http://twitter.com/#!/dhh/status/149149010194735104


459nobodyさん:2011/12/21(水) 04:07:30.91 ID:???
460nobodyさん:2011/12/21(水) 05:54:52.39 ID:???
ruby1.8.7対応を切らないでくれっていうコメントにjoostが泣き言いうなってキレていてワロタ
461nobodyさん:2011/12/23(金) 17:01:07.42 ID:???

モデルにメソッドを生やして、モデル内部でTwitterAPIやKVSの処理を隠蔽して実装していれば、
ビューや、コントローラ側の実装に一切手を加えること無く、プログラムを改修することができます。
http://d.hatena.ne.jp/kyoro353/20111223/1324589389

the { buckblogs :here }: Skinny Controller, Fat Model
http://weblog.jamisbuck.org/2006/10/18/skinny-controller-fat-model

http://d.hatena.ne.jp/higayasuo/20091013/1255408723
http://d.hatena.ne.jp/noopable/20090419/1240129768
462nobodyさん:2011/12/23(金) 17:09:04.27 ID:???
Ruby on Railsのパフォーマンス向上に関する10のtips
http://blog.tkmr.org/tatsuya/show/268-ruby-on-rails-10-tips
findメソッドはパワフルだけど基本SELECT * FROMなので場合によっては:selectで必要なカラムだけ読み込む、また:limitや:offsetを活用する

ごくごく基本的な Ruby on Rails のパフォーマンスチューニング
http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20071114
:conditions オプションでキーに使われるようなカラムにはインデックスを作成すべし

:selectで取得するカラムを絞ったらパフォーマンスが倍に
http://brass.to/blog/active_record_select_option.html
レコード件数は110万件くらい
カラム数は30程度
インデックスは効いている(explainで確認済み)

Rails で MySQL を使うときの注意点 | METAREAL
http://www.metareal.org/2007/07/24/notes-on-rubyonrails-with-mysql/
SQL を二段階に分けるといい
まず、最初の SQL でレコードの ID だけを SELECT する(int だけなので、このときの一時テーブルはメモリ上に作られる)
次に、その ID で必要な TEXT や BLOB を SELECT するんだ(これは ID による単純な検索なので一時テーブルは使われない)

MySQLパフォーマンスチューニングのためのインデックスの基礎知識
http://d.hatena.ne.jp/kiyo560808/20101117/1289952549

463nobodyさん:2011/12/23(金) 19:31:18.35 ID:???
railsではroutingで「:id」みたいなキーワードが使えるそうですが、
これって他にどういうのがありますか。どこかに一覧とかありますか。
464nobodyさん:2011/12/23(金) 19:38:25.90 ID:???
465nobodyさん:2011/12/23(金) 21:07:13.80 ID:???
rails3.1

application_controller.rb で設定した定数
HOGE = "fuga"

view
<%= HOGE %>

fuga が表示されない。


466nobodyさん:2011/12/23(金) 21:24:08.22 ID:???
スコープちゃうし
467nobodyさん:2011/12/23(金) 21:37:37.31 ID:???
>>463
自由に設定できるので、特に一覧とかはない
468nobodyさん:2011/12/23(金) 23:53:29.60 ID:RLJSI/VQ
特殊なのは params[:format] くらいかな…
469nobodyさん:2011/12/24(土) 03:08:14.14 ID:???
470nobodyさん:2011/12/24(土) 03:16:23.91 ID:???
471nobodyさん:2011/12/24(土) 10:13:11.30 ID:???
1.2系の頃から仕事で使ってるが、変化早過ぎて最近ちょっと疲れてきた。
技術者の良いフィルタになってるとは思う。
簡単そうに見えて実は簡単じゃないし。
楽だけどな。
472nobodyさん:2011/12/24(土) 10:19:07.66 ID:???
>>471
変化が急すぎて仕事でやったらメンテナンスが大変そう
まあ、いまのウェブアプリの寿命なんて1,2年だろうけど、内部システムで10年くらい使う気の人もいるから
473nobodyさん:2011/12/24(土) 10:31:50.02 ID:???
Webアプリの寿命って短いよな。

内部システムとして使うなら別にいいんじゃないかと思うけど。
Railsのバージョン上げなきゃいいだけの話だし。
474nobodyさん:2011/12/24(土) 10:36:22.29 ID:???
>>473
機能拡張とかにさくっと応えるのがアジャイルっぽくてかっこいいと思うんだけど、内部システムで1.2とか2.3とかでどうだったかなとかいちいち調べるのがめんどくさそうだなと思って
475nobodyさん:2011/12/24(土) 12:20:27.37 ID:???
いまだにWindows2000サーバーセットアップの仕事とかあるしな
476nobodyさん:2011/12/24(土) 13:07:20.11 ID:???
派遣で単価50とかで来る人には、ちょっとツライかなと感じてる。
PHPとか他の言語でもそうだけど。
Railsできますというから頼んだら、結構できなくて教えなきゃいけなかったり。

他の現場で変な癖ついてるとかもよくある。全部コントローラにぶちまけとか。
テスト書いた事ない人は多い。テストも教えるとRailsやプラグインの機能のテスト書いてたり。

勉強する事たくさんあるから大変なのは分かるんだが。


477nobodyさん:2011/12/24(土) 17:44:13.17 ID:???
派遣のスペックは嘘で塗り固められてるのがデフォだからなぁ。

テストは書かない職場が多いからじゃないのかな、残念だけど。
個人やチームレベルでは書いてる人も多いとは思うんだけど。
478nobodyさん:2011/12/25(日) 02:07:07.11 ID:???
479nobodyさん:2011/12/25(日) 11:44:21.41 ID:???
https://github.com/tchandy/octopus/wiki/sharding

User.where(:name => "Thiago").limit(3).using(:slave_one)
Octopus.using(:slave_two) do
User.create(:name => "Mike")
end

# This will find the user in the shard1
@user = User.using(:shard1).find_by_name("Joao")

# This will find the user in the master database
@user2 = User.find_by_name("Jose")

#Sets the name
@user.name = "Mike"

# Save the user in the correct shard, shard1.
@user.save
480nobodyさん:2011/12/26(月) 02:29:30.11 ID:???
481nobodyさん:2011/12/26(月) 17:38:58.62 ID:???
apacheでrorを動かす場合ってfastcgiで動かさないとだめですか?
482nobodyさん:2011/12/26(月) 17:45:49.50 ID:???
passangerが多いかな
483nobodyさん:2011/12/26(月) 17:51:26.58 ID:???
>>482
こういうのがあるんですね
さっそく入れてみたいと思います
ありがとうございます
484nobodyさん:2011/12/26(月) 18:53:06.06 ID:???
派遣って言うのはどこで探したらいいのですか?
485nobodyさん:2011/12/26(月) 18:58:50.75 ID:???
ハロワでも行けば?
486nobodyさん:2011/12/26(月) 19:02:04.34 ID:???
働くにしても要請するにしても派遣会社に問い合わせればいいんでないの
487nobodyさん:2011/12/26(月) 22:45:08.91 ID:???
質問です。routes.rb が

match 'foo(/:a(/:b))' => 'foo#bar', :as => :foo, :defaults => { :a => 'a', :b => 'b' }

のときに

foo_path({:a => 'a', :b => 'c'})

をすると

/foo/a/c

こんなpathになってほしいのに、

/foo?b=c

こんなpathになってしまいます。

どうすればいいのでしょうか?
どうか教えてください。お願いします。
488nobodyさん:2011/12/27(火) 02:02:03.67 ID:???
rake routes

489nobodyさん:2011/12/28(水) 18:22:13.38 ID:NpMlDDDi
fixturey見込ませたらこんなメッセージが出てきた…
DEPRECATION WARNING: read_csv_fixture_files is deprecated and will be removed from Rails 3.2.
FactoryGirilだとデータ数が増えたときに死ぬんだけど
俺は一体どこへ行けば…
490nobodyさん:2011/12/28(水) 19:52:55.71 ID:mJMZrp4J
491nobodyさん:2011/12/29(木) 00:15:45.49 ID:uJvGrCNN
Rails3.1で
SelectやradioでAjax処理を行うにはどうすればいいですか?

rails2系にあった
remote_functionが削除されているようで……
泥臭く自前でonclickか、changeあたりを書きまくるしか無いのでしょうか?
492nobodyさん:2011/12/29(木) 00:29:05.15 ID:???
>>489
rake task書いたら?
mysql なら load_in_file(だっけ?)とかで読ませたら速いだろうし

>>491
onchange でやってる。
値飛ばすだけなら、そんなにがんばらんでもできると思う。

493nobodyさん:2011/12/29(木) 01:15:13.16 ID:uJvGrCNN
>>492
ですよねーありがとうございます
それについてですが

こうなると思うんですが
radio_button_tag :name , "value" , {} , { :onchange => "" }
このタグを出力するとなぜか、勝手に"checked=cheked"になります

radio_button_tag :name , "value" , { :checked => false } , { :onchange => "" }
radio_button_tag :name , "value" , "" , { :onchange => "" }
radio_button_tag :name , "value" , { :checked => "" } , { :onchange => "" }

どれも表示された時勝手にチェックされてます
なんでこんなしようなのかわからないですが、”チェックされてない”を明示的に指定する方法なありますか?
494nobodyさん:2011/12/29(木) 01:20:11.73 ID:uJvGrCNN
自己解決

radio_button_tag :name , :value , false , {}
これでいけました
495487:2011/12/29(木) 11:25:08.28 ID:???
routes.rb を

match 'foo(/:a(/:b))' => 'foo#bar', :as => :foo

にしてから、コントローラに

params[:a] = 'a' unless params.has_key? :a
params[:b] = 'b' unless params.has_key? :b

を追加して

foo_path({:a => 'a', :b => 'c'})

をすると

/foo/a/c

になりました。

:defaults があるとなぜか上手くいかないので、
コントローラ側でデフォルト値を設定するようにしたのですが、
もっと良い方法は無いでしょうか?
496nobodyさん:2011/12/29(木) 12:51:11.92 ID:???
match 'foo' => 'foo#bar', :as => :foo, :a => 'a', :b => 'b'
match 'foo/:a(/:b)' => 'foo#bar', :as => :foo, :defaults => {:b => 'b'}
497nobodyさん:2011/12/29(木) 14:39:12.76 ID:0hMYqXPq
498nobodyさん:2011/12/29(木) 15:19:51.34 ID:???
649 デフォルトの名無しさん [sage] 2011/12/29(木) 14:50:37.28 ID: Be:
学生プログラマ日本一決定戦(予選は社会人も参加可)
ttp://codevs.jp/howto.html
現在予選開催中
応募締切 2012.1.6 12:00

おもしろいことやっているじゃん。誰か今から参加しろよ。
499nobodyさん:2011/12/29(木) 22:35:23.24 ID:zHQvnIdy
 フジテレビの報道に鑑みて、記憶するところ、滝川クリステル、安藤優子、木村太郎らは、風説の流布に関与していたものと思われます。
また、株主でなくとも、テレビ放送を見ていた者は、経済活動に大きな影響が、あったように思われます(例;アカウントの削除レベルですらオイルショック的な要素として考えうる点)対比的には、日興コーディアルの粉飾問題は、ほとんど報じられていませんでした。
 27時間テレビで、明石家さんまが明らかに「キッコーマンの醤油」の瓶(意匠はあるのでしょうか?)をもって「しょうゆうこと」と宣伝していましたが、
その後CMの契約までこぎつけています。また、お礼があったと番組で放送してました。なお、フジテレビも広告主であるキッコーマンとの契約を成立している
これは、著しく公共性を損なっているでしょう。
また、トークの途中でも、醤油の瓶を画面に映し続
けている行為は、サブリミナル効果の観点からも番組放送基準を逸脱しているように思われます。
あるある大事典の頃、わたくし自身、全国規模でなく小規模なマーケットですら、ヨーグルトの売り切れに遭遇しています。
この時の、フジテレビ及びキッコーマンの株価は、どのように変動していたでしょうか?(返信無用)
明石家さんまこと杉本高文が、所属している吉本興業におけるフジテレビの持株比率は、およそ12%であり、株式を所有する他社の多くは、放送業界である点
を熟慮し、CMを視聴すると、広告業界も含めて、歪と言わざる負えないのではないでしょうか。
ちなみに、茂木友三郎は、キッコーマン株式会社の名誉取締役でありフジテレビの監査役です。
500nobodyさん:2011/12/30(金) 00:08:53.74 ID:???
ネトウヨ死ね
501487:2011/12/30(金) 00:45:59.85 ID:???
>>496
ありがとうございます。
502nobodyさん:2011/12/30(金) 12:23:33.87 ID:???
ちょくちょくRoRで開発してるところをみてきましたが
PHPもやってる方にお伺いしたいのですがこれってCakePHPと比べても高機能ですか?
やっぱりRORの習得は1年ぐらいかかるぐらい難しいでしょうか?
503nobodyさん:2011/12/30(金) 12:36:07.73 ID:???
個人的には CakePHP も RoR もそれ自体の習得にかかる時間はかわらないと思う。
MVCフレームワークとして見ればそう大きく違ったもんでもないし
もっぱらそれぞれ特有の実装方法でもにょもにょと時間かかるだけだろうし。
最大は Ruby/PHP の習得にかかる手間の差ぐらいかねえ。

機能差でいけばプラグインの差を考えると大した差はないと思う。
動作速度でいくと Cake の方が速くなりがち。
保守性/書きやすさでいくと個人的には RoR を推したいけどこれは個人差でしょうね。

ただ、開発メンバの集めやすさ(質を問わず)でいったら Cake の方が圧倒的に多いんじゃない?
504nobodyさん:2011/12/30(金) 12:47:51.87 ID:???
CakePHP覚えないとダメか
あれ覚えるのに挫折したぐらいだからRORも挫折しそう
505nobodyさん:2011/12/30(金) 13:11:51.34 ID:???
RoRいいところひとつもないな
506nobodyさん:2011/12/30(金) 13:16:20.20 ID:???
>>504
フレームワークは一個使い方覚えると他の言語のも結構すんなり覚えられるようになるから
Cake でも RoR でもいいからちゃんと何か通しで作ってみたほうがいいと思う。
507nobodyさん:2011/12/30(金) 13:35:24.55 ID:7lR2qCEx
凄く基本的なことで申し訳ないんですが、
scriptディレクトリ以下に新しくファイルを作って、
そこからモデルにUser.find_by_idなどでアクセスしたい場合って、
どうすれば良いのでしょうか?

すみません。お願いします。
508nobodyさん:2011/12/30(金) 14:27:19.44 ID:???
PHPにはもう戻れないわ。

Cakeで言ってる新しい機能とかって、Railsの人から見たら、今更それが付いた程度なの?という感じだし。
array() とかもう書きたくない。

人はPHPの方が圧倒的に集めやすいけど、できない人多過ぎ。
509nobodyさん:2011/12/30(金) 14:32:04.94 ID:???
>>507
rails runnner script/hogehoge.rb すれば
普通に User.find_by_id とか使えるようになるよ。
510nobodyさん:2011/12/30(金) 16:15:53.53 ID:???
array()がフレームワークと何が関係あるのか知らんがphpも[]で書けるようになってる
511nobodyさん:2011/12/30(金) 16:23:58.18 ID:vle2W8Q+
食べログの画面数は約200あるが,開発に取りかかって約2カ月で完成した。
「VBscriptならこの倍,PHPでも1.5倍はかかっていたのではないか」
コード量も10分の1になった。
http://itpro.nikkeibp.co.jp/article/OPINION/20071031/286028/
512nobodyさん:2011/12/30(金) 16:34:11.02 ID:vle2W8Q+

インタビュー:[楽天]Ruby活用事例とROMA,Fairy|gihyo.jp … 技術評論社
http://gihyo.jp/dev/column/01/prog/2010/030801?page=2
RailsとCakePHPを比べたところ,高負荷時にはRails のほうが大幅に応答性能が高いという結果が出たことですね。
これは200リクエスト/秒くらいからPHPの応答性能が急激に下がるのが原因です。
Rubyはそれほど大きくはパフォーマンスが落ちないんです。
513nobodyさん:2011/12/30(金) 16:36:29.16 ID:vle2W8Q+
第4回 Railsに変えてよかった!:iKnow!の場合 | Think IT
http://thinkit.co.jp/article/156/4?page=0,1
3ヶ月、わずか3名程度のエンジニアチームで、彼らはPHPで実装が完了していたレベルに追いつきました。
またコード量はPHPの1/5以下にまで削減されており、よりシンプルな構成も実現できました。
514nobodyさん:2011/12/30(金) 16:38:10.86 ID:???
VBscriptを引き合いに出す理由が分からない。
515nobodyさん:2011/12/30(金) 16:39:13.20 ID:???
Rubyの言語の学習自体はPHPより簡単に出来ますか?
516nobodyさん:2011/12/30(金) 16:52:22.70 ID:???
PHPで困るのは、特にポリシーを感じられない変更かな。
関数名とか、
「"_" 付けました」「やっぱりやめました」
みたいなの。
517nobodyさん:2011/12/30(金) 17:05:57.53 ID:???
>>515
プログラミング自体を勉強したいなら、Rubyの方がオススメ。
PHPだと言語固有の問題に足を引っ張られるので。

変数とループ制御、条件分岐抑えれば大体どの言語でもいけると思う。

518nobodyさん:2011/12/30(金) 17:15:57.97 ID:???
>>511-513
Ruby で彼女が出来ました!
みたいでわろた
519nobodyさん:2011/12/30(金) 17:24:14.88 ID:???
とりあえずRubyいれてインストールしてみます
520nobodyさん:2011/12/30(金) 17:34:24.62 ID:???
PHPとRubyのコードの書き方を比較 - ウェブライフハック
http://www.mapee.jp/wlh/phpruby.html
521nobodyさん:2011/12/30(金) 17:37:39.45 ID:???
"諸君、私はPHPが大好きだ" - ぐらめぬ・ぜぷつぇんのはてダ 
http://d.hatena.ne.jp/msakamoto-sf/20080131/1201718034

404 Blog Not Found:そろそろPHPに関して一言いっとくか 
http://blog.livedoor.jp/dankogai/archives/50835571.html

404 Blog Not Found:「PHPなめんな」と「(Perl|Python|Ruby)をなめんな」の違い 
http://blog.livedoor.jp/dankogai/archives/50993137.html

522nobodyさん:2011/12/30(金) 17:39:36.45 ID:???
知り合いがネット上ではネカマのふりをしてたほうが
アホな男が優しくしてくれるって言ってた。
523nobodyさん:2011/12/30(金) 18:22:45.35 ID:???
>>509
ありがとうございます!
無事にアクセスできました。
524nobodyさん:2011/12/30(金) 20:16:41.80 ID:???
CakePHPからCodeigniterに乗り換えたけど
Codeigniterもゴタゴタしてきたのでrailsに移ってきた
やっぱオリジナルが一番だね
525nobodyさん:2011/12/30(金) 23:19:01.31 ID:???
>>515
個人的には言語の直交性がある分 Ruby の方が習得楽だと思うよ。
PHP は http://www.tokumaru.org/d/20100927.html#p01 みたいなの見てて
ほとほと嫌になった。
526nobodyさん:2011/12/30(金) 23:29:12.01 ID:???
PHPはネットの情報量は多いが、その多くが「バッド・ノウハウ」なんだよなぁ
527nobodyさん:2011/12/30(金) 23:40:03.27 ID:???
「おまじない」で通じるのがまた良い
528nobodyさん:2011/12/30(金) 23:44:10.85 ID:???
Railsの情報はバッドノウハウどころかバージョン違うと動かないし3.1とか情報が全然なくて困るぞ
529nobodyさん:2011/12/30(金) 23:45:40.34 ID:???
英語で探せ
530nobodyさん:2011/12/31(土) 01:00:19.39 ID:???
障らぬ神に祟り無し
531nobodyさん:2011/12/31(土) 03:41:05.56 ID:???
つまり日本語圏にはバージョンアップに追従できてるやつがいない=railsはオワコン
532nobodyさん:2011/12/31(土) 11:46:32.51 ID:???
日本語しか使えない奴がオワコンの間違いだろ
533nobodyさん:2011/12/31(土) 12:35:18.52 ID:???
rubyで開発する==rorを使うというのがやっぱり前提ですか?
534nobodyさん:2011/12/31(土) 12:39:06.19 ID:???
何したいかによるんじゃない?

仕事だとしたら Ruby でデスクトップアプリを作る酔狂な案件はないと思うし。
RoR とか Sintara とかの Web アプリ向けフレームワークを使う場合が圧倒的に多いと思うよ。

個人でなんかしたいだけなら別に RoR 使わんでワンライナーでニヤニヤしてたって構わんと思うけど。

535nobodyさん:2011/12/31(土) 12:40:23.61 ID:???
Sintara ってなんだ・・・Sinatra だ
536nobodyさん:2011/12/31(土) 13:03:48.38 ID:???
ワンライナーでニヤニヤする感性がわからん。
537nobodyさん:2011/12/31(土) 13:10:34.96 ID:???
ネットワーク系のシステムとかは、素のRubyで開発した事あるな。

Railsきちんとやってる人は、英語の情報追いかけてるので、わざわざ日本語で記事書かないかも。
海外記事で書かれてた事をやってみた、とか使ってみた、みたいなのは時期が早くないと二番煎じ的で面白くないし。
moongiftとかみたいに、ライブラリ紹介し続けるのも個人ではアレでしょう。

538nobodyさん:2011/12/31(土) 13:29:46.49 ID:???
ワンライナーだとperlで書く事が多いかも。
多分rubyでも同じ事はできると思うが。なんとなく。
539nobodyさん:2012/01/01(日) 13:57:40.13 ID:???
Railsって$SAFEを設定しないんだっけ?
$SAFE設定するのってCGIだけ?
540nobodyさん:2012/01/01(日) 15:45:32.95 ID:???
やってる事からして、設定したら動かないと思う。
541nobodyさん:2012/01/01(日) 17:43:55.54 ID:NG5h+Lv8
Rails3でのAjax処理について全部一覧でまとまってるサイト無いですか?
英語でもかまいやせん

link_to ....:remote => true
form_tag ....:remote => true
form_for ....:remote => true
select_tag ...:data=>

これくらいしか知らないんですけどRails2はもっと一杯あったし他にもあると思うんですよね……
542nobodyさん:2012/01/01(日) 18:04:28.47 ID:???
link_to_remote
remote_form_for
observe_field
observe_form
form_remote_tag
button_to_remote
submit_to_remote
link_to_function
periodically_call_remote
http://github.com/rails/prototype_legacy_helper

http://programifications.com/rails-3-cheat-sheet
543nobodyさん:2012/01/01(日) 18:14:13.39 ID:???
544nobodyさん:2012/01/01(日) 18:52:30.28 ID:NG5h+Lv8
>>542>>543
ありがとうございます。ググりながらやってみたいと思います。
545nobodyさん:2012/01/02(月) 14:16:29.35 ID:???
今クックパッドでrails使いを募集してるけどぽまえらで受ける人いる?
546nobodyさん:2012/01/02(月) 14:17:42.50 ID:???
面接にいくための服がない
547nobodyさん:2012/01/02(月) 15:01:23.65 ID:???
面接に行くためのGitリポジトリがない
548nobodyさん:2012/01/02(月) 16:35:56.14 ID:???
>>546,547
あるある
549nobodyさん:2012/01/03(火) 04:53:42.11 ID:4vx0E6SA
http://www.nicovideo.jp/watch/sm16593255
↑これでしょ?w
550nobodyさん:2012/01/03(火) 23:24:56.60 ID:???
unicornとnginxの組み合わせを試してますが、nginxのログに、ユーザのIPではなく、127.0.0.1が記録されてしまいます。
まあnginxをリバースプロキシとして使っているならそうなのかも知れませんが、
REMOTE_ADDRを記録する方法があれば教えて下さい。
ぐぐってもうまく見つけられなかったので。
551nobodyさん:2012/01/04(水) 00:24:46.80 ID:???
>>545
web+dbの記事を読んだとこだけど、クックパッドは魅力的なところだね後3年若かったら応募してたかも
552nobodyさん:2012/01/04(水) 00:42:56.01 ID:???
IPOして給料は多少良くなったけど、今から行っても金銭的には旨みないかもな。
技術と考え方学べるならストック要らない、というのならまだしも。
553nobodyさん:2012/01/04(水) 09:37:18.14 ID:???
「年内にクックパッド抜く」--楽天レシピ、ポイント連動で攻勢 - CNET Japan
http://b.hatena.ne.jp/entry/japan.cnet.com/news/business/20425484/

楽天レシピはなぜクックパッドに勝てないのか?(The reason Rakuten-recipe can't beat Cookpad)
http://hiromikubota.tumblr.com/post/12920370524/the-reason-rakuten-recipe-cant

料理レシピサイトでクックパッドに挑む楽天の狙いと勝算(1) | 企業戦略 | 投資・経済・ビジネスの東洋経済オンライン
http://www.toyokeizai.net/business/strategy/detail/AC/f0e10c317ba4e968b5ba4596a2416ceb/
554nobodyさん:2012/01/04(水) 09:54:33.21 ID:???
>>552
AWSでrailsをベースのウェブサービスをしていて、ある程度成功していて、TDDとかprototypeとか短期サイクルの開発して、その成果をchankoとかでオープンソースに還元してる
技術的なバックグラウンドとノウハウがきちんとビジネスに結び付いていて今のところかなりよいお手本だと思った
お金とは別に今の責任と生活がなければ実際にどうまわってるのか見てみたい
555nobodyさん:2012/01/04(水) 09:56:28.27 ID:???
556nobodyさん:2012/01/04(水) 10:14:37.10 ID:???
>>555
業績も伸びてるけど
有利子負債なしか
すごいなー
クラウドの利用で初期投資も少なく成功したんだね
557nobodyさん:2012/01/04(水) 10:46:20.67 ID:???
558nobodyさん:2012/01/04(水) 12:04:53.10 ID:???
>>545-557
クックパッドがステマに熱心な会社だと言うことはよく分かった。
559nobodyさん:2012/01/04(水) 12:15:40.89 ID:???
どっちかいうと逆じゃないかと。
ちっさい会社の頃からずっと同じことやってて、たまたま良い技術者に巡りあえて今みたいになってるようだよ。
メインターゲットの女性には、もう十分認知度あるし、ステマとかいらんだろ。

Railsに関して言えば、よくバージョンアップしたなと思う。
作り込み過ぎてる感じがしてたから、1.2系から2系に上げるの大変そうだったし。

ポイント配りまくってクックパッド潰しにかかった楽天レシピは思った程伸びてないみたいだね。
560nobodyさん:2012/01/04(水) 12:58:12.72 ID:???
今更クックパッドに対してステマとかどんだけ田舎もんなんだ
561nobodyさん:2012/01/04(水) 13:04:48.85 ID:???
楽天もRails採用してるんでしょ。Rails頑張ってるじゃん。
562nobodyさん:2012/01/04(水) 13:53:01.78 ID:???
>>558
楽天社員乙w
563nobodyさん:2012/01/04(水) 13:58:43.18 ID:???
>>561
Rubyアピールはしてるけど使ってない。
ほとんどPHPとかだったはず。
Matz連れてきたのも含め、Rubyは外向けの宣伝用だと思う。
どこか裏ではちょっと使ってるのかも知れないけど、研究部門のお遊び程度じゃないかと。
564nobodyさん:2012/01/04(水) 14:11:41.85 ID:???
前に勉強会で楽天社員の講演聞いたけど
内部では色んなフレームワークとかDBバックエンドとか試してて
なんかすごく楽しそうではあった。

Googleとか筆頭に楽天とかもそうだけど、トラフィック量がはんぱない会社なんかだと
色んなシステムの速い遅い使える使えないが実感を伴ってくるから勉強になりそうだよね。
565nobodyさん:2012/01/04(水) 14:25:58.57 ID:???
>>550
proxy_set_header X-Real-IP とか?
566nobodyさん:2012/01/04(水) 19:45:05.82 ID:???
567nobodyさん:2012/01/05(木) 12:14:59.16 ID:???
Riding Rails: Rails 3.2.0.rc2 has been released!
http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released

Comparing v3.2.0.rc1...v3.2.0.rc2 for rails's rails - GitHub
https://github.com/rails/rails/compare/v3.2.0.rc1...v3.2.0.rc2
568nobodyさん:2012/01/05(木) 14:42:50.78 ID:???
Netbeensやコマンドプロンプトでコントローラーとかを生成しようとすると
C:/Ruby187/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:105:in `const_missing': uninitialized constant User::Authentication (NameError)
とでて生成されません。
これがでるのはrestful_authenticationのプラグインを入れて認証機能を作ってみようとしているプロジェクトで、どうやらrestful_authenticationを使うと生成ができなくなるみたいです
OSはwindowsXP、rubyが1.8.7、railsが2.3.5、gemが1.3.6です
回避方法があれば教えてもらえないでしょうか

いやもうもっと基礎的なところからやり直したほうがいいってレベルなのはわかってるんですがどうかよろしくお願いします
569nobodyさん:2012/01/05(木) 15:04:43.65 ID:???
has_secure_passwordを使ってて、localhostだと普通に動くんだがPassengerやらを使って外に出すと
使えなくなってしまうのは何でだろう。
NoMethodErrorになってしまうぐぬぬ
570nobodyさん:2012/01/05(木) 15:07:09.14 ID:???
rake db:migrate
571nobodyさん:2012/01/05(木) 15:10:22.39 ID:???
ダメっぽいです
572nobodyさん:2012/01/05(木) 15:48:57.07 ID:???
restful_authenticationのドキュメントは読んだか
プラグインはどうやってインストールしたか
プラグインを読み込んでいるか
をまず確認
573nobodyさん:2012/01/05(木) 16:51:11.54 ID:???
>>566
>http://railsdoc.com/

丁寧にマトメていて、なかなかいいんじゃまいかな
今後のコンテンツの充実に期待したい

ところで個人運営サイトのように見えるけど、
comドメインなのは org や info が取得できなかったからなのかな?
574nobodyさん:2012/01/05(木) 17:08:49.14 ID:???
>>572
ありがとうございます
プラグインはgemでインストールしました。listにでてるので読み込めてるとは思います
ドキュメントは今から読んでみます、英語・・・
575nobodyさん:2012/01/05(木) 21:28:57.74 ID:???
>>574
listに出ててもRailsアプリで読めてるかどうかは分からない。
ちゃんとアプリ側で読み込んでる?
576nobodyさん:2012/01/06(金) 00:00:54.63 ID:XvAj72g/
Rails 2.3.9 に activemerchant (1.20.1) いれたら

=> Booting Mongrel
=> Rails 2.3.9 application starting on http://0.0.0.0:3000
c:/ruby/lib/ruby/site_ruby/1.8/rubygems.rb:233:in `activate': can't activate activesupport (>= 2.3.11, runtime) for ["activemerchant-1.20.1"], already activated activesupport-2.3.9 for ["rails-2.3.9"] (Gem::LoadError)

っておこられる。
どうしたらいいかわかるひといる?


About your application's environment
Ruby version 1.8.7 (i386-mswin32)
RubyGems version 1.3.7
Rack version 1.1
Rails version 2.3.9
Active Record version 2.3.9
Action Pack version 2.3.9
Active Resource version 2.3.9
Action Mailer version 2.3.9
Active Support version 2.3.9
Application root XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Environment development
Database adapter postgresql
Database schema version 20120105132229
577nobodyさん:2012/01/06(金) 01:29:15.40 ID:gqkuStz+
Rails2.3.11以上じゃないと使えないってエラー出とるやん
578nobodyさん:2012/01/06(金) 01:58:58.55 ID:rCtchA2Y
RSpecでガラケーからアクセスや、スマホからアクセスしたことを偽装するのって
どうすればいいんだ?

ユーザーエージェントをごまかせばいいのだから
get関数でアクセスする前に、ヘッダーを加工すればいいのだろうけど
そのための方法がわからない…
579nobodyさん:2012/01/06(金) 03:46:39.87 ID:???
stub使えばええやん
580nobodyさん:2012/01/06(金) 19:44:38.51 ID:???
heroku上でアップロード処理ができません - Ruby - 教えて!goo
http://oshiete.goo.ne.jp/qa/7228960.html
581nobodyさん:2012/01/07(土) 03:51:31.83 ID:???
582nobodyさん:2012/01/07(土) 05:21:49.90 ID:???
aws-sdk
http://docs.amazonwebservices.com/AmazonS3/latest/dev/UsingTheMPRubyAPI.html
http://aws.amazon.com/articles/8621639827664165

http://aws.amazon.com/jp/sdkforruby/
http://docs.amazonwebservices.com/AWSRubySDK/latest/

config = YAML.load(File.read(config_file))
AWS.config(config)

s3 = AWS::S3.new
bucket = s3.buckets.create(bucket_name)

basename = File.basename(file_name)
o = b.objects[basename]
o.write(:file => file_name, :acl => :public_read)
http://aws.typepad.com/aws/2011/07/introducing-the-aws-sdk-for-ruby.html

# gives the object public read permissions
s3.objects["my_object"].acl = :public_read
http://aws.amazon.com/releasenotes/9520538054494306

http://amazon.rubyforge.org/doc/classes/AWS/S3/ACL.html
583nobodyさん:2012/01/07(土) 20:38:13.67 ID:???
Getting Real by 37signals
http://gettingreal.37signals.com/GR_jpn.php

なぜプログラマを難問奇問・一風変わったテストなどで雇ってはいけないのか? - GIGAZINE
http://gigazine.net/news/20120107-hire-programmers/
584nobodyさん:2012/01/08(日) 07:51:47.11 ID:???
Gon gem ? get your Rails variables in your JavaScript
https://github.com/gazay/gon
585nobodyさん:2012/01/08(日) 18:02:55.74 ID:???
-rails plugin install open_id_authenticate
ってしたらなんかエラーが出たので
-sudo gem install ruby-openid
ってして
再度
-rails plugin install open_id_authenticate
したら
-already installed
って出たんですが、

-rake open_id_authenticate:db:create
ってしてもabortが出ます。

どうやったらdb:createできますでしょうか?

586nobodyさん:2012/01/08(日) 20:04:16.89 ID:???
>>585
それじゃ分からんわ。エラーメッセージ貼って。

あとRailsのバージョンと、先に rake db:migrate してるかどうか。
予想ではプロジェクト作ってから一度もdb:migrateしてないんじゃないかと。

他には、vender/plugin/ この先無くなるから、もうあまり使わない方が良いかも。
587nobodyさん:2012/01/08(日) 21:49:03.21 ID:bQSMbxTu
Railsを勉強開始しようとしてます。Ruby歴は2年です。
最初に購入する本として、次の図書を考えてます。
1)Ruby on Rails3アプリケーションプログラミング、山田祥寛
2)RailsによるWebアプリケーション開発、Sam Ruby, Dave Thomas, DHH

今、図書館から1), 2)の2冊を借りて手元にあるのですが、どちらも凄いボリュームです。どちらか、買って手元において置くとするとどちらが良いでしょう?
588nobodyさん:2012/01/08(日) 22:03:02.09 ID:obYOc1In
>>586
585です。

Rails 3.1.1です。
db:migrate
db:create
は行っています。

http://kdri.g.hatena.ne.jp/nakao_mitsuteru/20070501/open_id_authentication
こちらを参考にインストールしようとしたのですが、
$ rails plugin install open_id_authentication
で、
already installed: open_id_authentication (open_id_authentication). pass --force to reinstall
と出ます。

>>vender/plugin/ この先無くなるから、もうあまり使わない方が良いかも。
OpenIDを使いたいのですが、pluginを使わないとしたらどうすればいいでしょうか?

589nobodyさん:2012/01/08(日) 23:27:51.62 ID:???
Riding Rails: Rails 3.2.0.rc2 has been released!
http://weblog.rubyonrails.org/2012/1/4/rails-3-2-0-rc2-has-been-released
Start moving any remaining Rails 2.3-style vendor/plugins/*. These are finally deprecated!

Extract your vendor/plugins to their own gems and bundle them in your Gemfile. If they're tiny, not worthy of the own gem, fold it into your app as lib/myplugin/* and config/initializers/myplugin.rb.
590nobodyさん:2012/01/09(月) 04:48:08.19 ID:???
>>588
2007年て記事が古過ぎ…
Railsは1年で相当変わるので1年以上前の記事は、あまり役に立たない。

openid のプラグインも別の良いのがあったと思う。
どうしてもopen_id_authentication使うなら、
ttps://github.com/Velir/open_id_authentication
で。

vendor/plugin 無くなるから、gemで入れるべし。
3.1なんだから、ちゃんとGemfile書いて

591nobodyさん:2012/01/09(月) 08:43:02.00 ID:DMrpzMan
認証はDeviseとOmniAuthが2巨頭なのかな。
592nobodyさん:2012/01/09(月) 09:36:50.74 ID:???
>>591さん
情報ありがとうございます。
それでやってみます。
593nobodyさん:2012/01/09(月) 09:39:54.42 ID:???
まったく同じ話がRailsのMLでも流れてきたわけだが。
これは偶然か必然か…。同一人物だとしたら、
「2chのやつらは役に立たないから、MLの優しい人に聞こう」
という魂胆が丸見えで、好感はいだけないな。
594nobodyさん:2012/01/09(月) 12:32:43.95 ID:???
RailsのML、日本のは全然流れてないから入ってないわ
595nobodyさん:2012/01/09(月) 14:35:16.33 ID:7f0AwpQn
安藤優子、木村太郎は、某プロパイダの社外取締役、かつ、安藤は、フジ社外の人間にもかかわらず、フジテレビジョンのM&Aの最中、フジのホワイトナ
イトの【親会社】の本業を無視して、「インターネットは虚業だ。具体性がない
。」というようなことをコメントしました。この虚業は、livedoorを指していた
としても、「同業者」であったということは、非常に、違和感を感じずには、い
られません。
596nobodyさん:2012/01/09(月) 22:28:24.19 ID:???
>>587
アジャイル開発の4版よんだけどなかなかいいじゃないか
最初にRuby入門つけたのもいい感じ
ショッピングサイトを作るのは二度目だったけど少しだし、今回からはテストをしながらなんで、さくさくいけた
これにでてきたこととHEADFIRSTにでてきた検索絞り込みとGoogleMapみたいなAjaxからのCRUDができればウェブアプリで必要なことはだいたいできるようになるんじゃないか?
597nobodyさん:2012/01/10(火) 10:40:02.72 ID:fEXJ/Y97
>>596
了解。HeadFirstは最初に買った、Rails本です。
あれしろ、これしろと、手を動かす指示が書いてあるのだけど、
何やってるのかが、チンプンカンプンなので、HeadFirstはお蔵入りです。

今、山田祥寛本を読んでるけど、良い感じ。
アジル開発の4版と山田本の両方をペラペラ眺める日々をしばらく過ごす
事にします。

図書館には、延長願いを出しに行くのが面倒だなぁ。
598nobodyさん:2012/01/11(水) 09:33:16.49 ID:sSdbuxVR
ページの一部を除外した状態のキャッシュを作りたいんですが、可能でしょうか?

『フラグメントキャッシュ』は、ページの一部をキャッシュする機能ですよね?
今回はその逆で、ページの一部を含まない状態のキャッシュを作成したいんです。

こういうことって可能でしょうか?

ググっても分からなかったもので、分かる方がおられたら教えていただきたいです。
599nobodyさん:2012/01/11(水) 14:13:31.69 ID:???
普通に「ページの一部を含まない状態」をキャッシュすればいいのでは?
600nobodyさん:2012/01/11(水) 16:02:48.82 ID:???
>>599
といいますと・・・?
フラグメントキャッシュで、含みたくない部分以外を範囲指定してやれば良いということでしょうか?
601nobodyさん:2012/01/11(水) 16:16:31.15 ID:???
うん
602nobodyさん:2012/01/11(水) 16:49:24.17 ID:Q415Wjs8
「ようこそ●●さん」の●●以外が固定みたいなありがち例なら、
可変部分だけAJAXで引っ張ってくるという手もある。
603nobodyさん:2012/01/11(水) 16:59:43.66 ID:???
俺はもうキャッシュを優先して
セッションに依存するページとそうでないページを明確に分けるようにして
できるだけセッションに触れないにしてるな
AJAXは結局アプリケーションにRPCするから
静的ファイルだけに比べるとかなりコストが高くなるんだよね
604nobodyさん:2012/01/11(水) 17:06:33.58 ID:???
シンプルな認証機能に管理者権限を持たせるrole機能を追加したいと思い調べたところ
restful_authenticationにrole_requirementというプラグインを使うといいとでたのでインストールしたいのですがもしかして現在はもう入手できませんか?
605nobodyさん:2012/01/11(水) 17:13:02.30 ID:Q415Wjs8
「プラグインを使う」という時点で記事が古いからなー。

https://www.ruby-toolbox.com/search?q=authorization

ここで人気のありそうなのに対する言及をひととおりぐぐってみてはどうか。
606nobodyさん:2012/01/11(水) 17:40:27.75 ID:???
ありがとうございます
rails2.3から脱出できないので古くてもいっぱいでてきたresethul_authenticationで頑張ってましたが、やっぱり新しいほうがいいんですかね・・・
とりあえずdeviceとacl9あたりがメジャーっぽいのでその辺も見てみます
607nobodyさん:2012/01/12(木) 08:41:17.11 ID:???
>>602
ユーザ名(ニックネーム)ならクッキーに入れといてjavascriptで表示すればいいじゃん
608nobodyさん:2012/01/12(木) 09:24:00.86 ID:4XFS90f0
いや、フラグメントキャッシュ以外にも手はあるよ、という話なわけで。
609nobodyさん:2012/01/12(木) 12:00:55.71 ID:???
>>598ですが、皆様色々なご意見ありがとうございます。

具体的には以下の現象で困っています。

今作成中のwebアプリでログイン認証があり、
1.ログアウト後に表示されるページA(キャッシュされるページ)に「ログアウトしました」という文言を表示させています。
2.再びログインし、ページBに行きます。
3.そしてページA飛ぶと、ログインしているのもかかわらず「ログアウトしました」という文言が表示されてしまいます。

これは上記1でページAをキャッシュした際、「ログアウトしました」という文言もキャッシュに含まれているからだと思います。


自分のイメージ的には、ページキャッシュで、
キャッシュに含めたくない部分を何らかのタグ(タグじゃないかもしれませんが)で囲い、
その囲った部分はキャッシュに出力されない。というようなことがもし可能なら、簡単なのだけれど・・・と思っています。
このような処理は可能なのでしょうか?
610nobodyさん:2012/01/12(木) 13:23:10.17 ID:???
そもそもキャッシュはユーザごとじゃないから最初にアクセスした
ユーザのデータでキャッシュが出来て後から来た人に情報駄々漏れになるよ
611nobodyさん:2012/01/12(木) 13:53:35.68 ID:???
動的な情報を出すページをキャッシュするという発想がそもそも違うのでは
612nobodyさん:2012/01/12(木) 14:33:36.78 ID:???
そもそもキャッシュの問題で特定できてるの?
キャッシュ切ったら正常に動作するの?
613nobodyさん:2012/01/12(木) 18:40:36.77 ID:???
>>598です。

>>610
キャッシュするページは、基本的に誰に見られてもいい情報ですので、その点は大丈夫かと思われます。
「ログアウトしました」という文言さえ出なければいいのですが・・・

>>611
やはりそうなんでしょうか・・・(汗

>>612
キャッシュを切れば正常に動作します。
614nobodyさん:2012/01/13(金) 02:48:55.26 ID:???
615nobodyさん:2012/01/13(金) 10:19:17.07 ID:???
> 「ログアウトしました」という文言さえ出なければいいのですが・・・

じゃあ出すなよw
616nobodyさん:2012/01/13(金) 11:39:56.71 ID:???
>>615
画面上には出したいのです。
ただ、キャッシュにはその文言を含めたくないということです。
617nobodyさん:2012/01/13(金) 11:46:33.49 ID:???
キャッシュにごちゃごちゃ機能持たせたらキャッシュの意味ないだろ
618nobodyさん:2012/01/13(金) 11:53:00.69 ID:???
素人質問で恐縮ですが、Railsって「uri」と「url」の使い分けってしてますか。
Rubyにはopen_uriというライブラリがあると聞いて、Rubyでは「uri」と「url」を使い分ける文化があるのかなと思いましたが、
Railsではどうなんだろうと思った次第です。
619nobodyさん:2012/01/13(金) 12:21:59.29 ID:???
>>609
>自分のイメージ的には、ページキャッシュで、
>キャッシュに含めたくない部分を何らかのタグ(タグじゃないかもしれませんが)で囲い、
>その囲った部分はキャッシュに出力されない。というようなことがもし可能なら、簡単なのだけれど・・・と思っています。
>このような処理は可能なのでしょうか?

そういうやり方があってもいいと思う。
(PHPのテンプレートエンジンであるSmartyには似たような機能があったはず。)
ただRailsにはなかったと思うから、キャッシュしたHTMLをさらに加工して出力する仕組みを自分でつくる必要がある。
もしくは、キャッシュにはその文言を含めず、かわりにクッキーに格納してそれをJavaScriptで出力する。
620nobodyさん:2012/01/13(金) 16:23:02.19 ID:???
> キャッシュにはその文言を含めたくない

キャッシュされたあとにログアウトしたときは出ないぞ
621初心者:2012/01/13(金) 16:36:02.23 ID:mEqOOBY4
かなり基本的なことかもしれませんが、教えてください。
認証に関しての質問です。

いままで、Rails解説本を見て、自作の認証を行っていました。
POSTでユーザとパスワードを送ってもらって、認証できれば、
あとはセッションで、同一人物であることを確認する方法です。

deviseの導入を考えているのですが、
Database Authenticatable、Token Authenticatable
というのは、それぞれどういうものでしょうか?
(どちらのモジュールを有効にするかで悩んでいます。)

漠然とした質問ですが、ヒントでも教えてもらえないでしょうか。
よろしくお願いします。
622nobodyさん:2012/01/13(金) 16:46:09.56 ID:???
>>621
http://d.hatena.ne.jp/babie/20100729/1280381392

日本語でぐぐって一番最初にHITした記事
623621:2012/01/13(金) 20:16:27.47 ID:???
single access token を理解していませんでした。
APIとしてサービスを公開するときに必要なんですね。知りませんでした。

とりあえず、ブラウザからアクセスして、認証のみ付けたいので、Database Authenticatableのみでよさそうでした。

624nobodyさん:2012/01/13(金) 21:43:02.56 ID:???
DBで認証して、成功したら次はsessionから。
自動ログインでcookieから。
仮登録とかメール変更なんかで token利用。
625nobodyさん:2012/01/13(金) 23:08:27.44 ID:???
sessionとcookieは同じだろ
626nobodyさん:2012/01/13(金) 23:41:48.48 ID:???
違う。
sessionもcookie使うけど。
ログイン画面によくある「次から自動ログイン」のチェックボックスのあれは、cookieにトークン入れとく。

よくある認証プラグインでは、
login_from_cookie と login_from_session みたいな感じで分かれてる。
627nobodyさん:2012/01/14(土) 04:15:33.52 ID:???
俺が勝手に考える正しいMVCの実装。モデルはデータAPI! - はかますたいる!【きょろの技的雑記】
http://d.hatena.ne.jp/kyoro353/20111223/1324589389
628nobodyさん:2012/01/14(土) 12:50:47.82 ID:???
629nobodyさん:2012/01/14(土) 15:20:38.61 ID:OUqaG7y7
coffeescriptで、クッキーを操作することってできるんでしょうか?
javascriptならできるんですけど・・・・
630nobodyさん:2012/01/14(土) 15:21:42.25 ID:dAISp9Jt
ヒント: ブラウザにはCoffeeScriptは見えていない。
631nobodyさん:2012/01/14(土) 15:33:13.30 ID:OUqaG7y7
>>630
つまり、CoffeeScriptからクッキーを参照、操作できないということでしょうか・・・?;;
632nobodyさん:2012/01/14(土) 16:07:29.03 ID:???
ヒント:ブラウザにはCoffeeScriptは見えていないということは、何が見えているのでしょうか?
633nobodyさん:2012/01/14(土) 16:19:57.74 ID:OUqaG7y7
>>632
HTMLとJavaScriptでしょうか?
634nobodyさん:2012/01/14(土) 17:20:17.06 ID:???
ようやくRailsが飲み込めてきた。
scaffoldで雛形作ってそこからいじろうとするとさっぱりだった。
scaffoldをやめたら簡単に飲み込めた。
635nobodyさん:2012/01/14(土) 17:22:57.80 ID:8reKjql1
実際Scaffoldなんてほぼ使わないよね
636nobodyさん:2012/01/14(土) 17:25:16.34 ID:???
そうは言っても基本はscaffoldだよ。
scaffoldのコード少しいけてないけどな。

どちらかというと基本抑えるために読む用のコードだと思ってるので、理解できたら rails gで好きなようにしたら良いと思う。
637nobodyさん:2012/01/14(土) 17:55:40.03 ID:MzyBrOAB
同じ問題にぶつかっている方がいないかと思いまして。。。
Ruby1.8.7 + Rails 3.0 で運用していたシステムの、Ruby側のVersionを 1.9.2 に上げることになりました。
通常の string型のカラムは問題はないのですが、
ActiveRecord のserializeカラム機能を利用した上で、HashやArrayに格納していた文字列を
表示しようとするとエラーになるようになりました。

incompatible character encodings: UTF-8 and ASCII-8BIT

要は、1.9以降は文字列がエンコード情報を持つようになったために起こっている問題です。
最悪、全てのレコードを精査して、
DBデータの再構築(全ての対象データを String.toutf8 して再保存する)
をするしかないのかなと思っていますが、もっとスマートな解決策を知っている方はいませんでしょうか。
638nobodyさん:2012/01/14(土) 18:11:41.19 ID:???
scaffold は自分でジェネレータ作ればなんぼかましになる
639nobodyさん:2012/01/14(土) 18:30:48.88 ID:???
>>637
ちゃんと日本語を含んだコメントやコードのある .rb ファイルは、先頭にマジックコメントが付いてるんだろうな?

# coding: utf-8
640nobodyさん:2012/01/14(土) 18:39:21.60 ID:???
CoffeeScriptでページ読み込み時の処理をさせたいけど、うまくいきません。。。
たとえば、ページAとページBがあるとします。
そしてページBのCoffeeScriptに以下のコードを書きました。
----------------------------------
$ ->
$(document)
.ready ->
alert "onload"
----------------------------------
すると「onload」というメッセージが出るのですが、これがページAを表示したときにも出てしまいます。
理想としては、ページBで読み込み完了した時のみ、「onload」のメッセージが出てほしいのですが、どうしたらよいのでしょうか?
ググってもあまり情報がなく、皆目見当がつかない状態です。
分かる方がおられましたら、どうかお願いします。
641nobodyさん:2012/01/14(土) 18:41:45.51 ID:???
>>640です。
すみません、CoffeeScriptのソース部分で、スペースが削られてしまいました。
改めて以下に書きます。

$ ->
 $(document)
  .ready ->
   alert "onload"
642nobodyさん:2012/01/14(土) 19:03:20.62 ID:???
むりせずjsで書けばw
643nobodyさん:2012/01/14(土) 19:23:00.89 ID:dAISp9Jt
どのファイルに書いたんだよ。
644nobodyさん:2012/01/14(土) 19:25:00.99 ID:???
>>643
ページBのcoffeeファイルに書きました。
645nobodyさん:2012/01/14(土) 19:30:56.72 ID:BK0/OR0A
app/assets/javascripts/application.js に
//= require_tree .
と書いてある以上、app/assets/javascripts の下に置いたら
全部まとめて1つのファイルになって、全ページで読み込まれる。
ページのURLとか、bodyのidとかで、動作対象ページと判断がつく場合だけ
動くように書けばいいんじゃないの?

あと、 jQuery では $(callback) が $(document).ready(callback) と同義なので、
$-> alert('onload')
でよいと思う。
646nobodyさん:2012/01/14(土) 19:35:16.16 ID:???
>>639
返答有り難うございます。

それがerbファイルの中で利用している部分なのです。
erbファイルに
<% # -*- coding: utf-8 -*- %>
を書くなども試してみたのですが、駄目でした。
647nobodyさん:2012/01/14(土) 19:36:04.88 ID:???
>>645
なるほど、全ページで読み込まれるのですね。
その点を知りませんでした。
お教えいただき、ありがとうございました。
648nobodyさん:2012/01/14(土) 20:18:11.10 ID:???
>>646
コントローラとかモデルとかヘルパとか、マイグレーションには日本語入ってないの?
649nobodyさん:2012/01/15(日) 01:30:43.73 ID:???
プログラマにとっては一人で一社ではなく、弁護士と一緒で一人で3社、4社と担当できる。
プログラマががんばって生産性が上がれば担当しているお客様をふやして給料も上がる。というビジネスモデル
http://www.publickey1.jp/blog/11/post_191.html
650nobodyさん:2012/01/15(日) 01:41:18.63 ID:???
それはないわ〜
頑張って1人で何人分も仕事したら給料上がるとか
651nobodyさん:2012/01/15(日) 02:10:41.77 ID:???
担当者が怪我して会社行けなくなった場合の運用とか考えてなくね?
652nobodyさん:2012/01/15(日) 03:21:32.46 ID:???
それってただのフリーランス
653nobodyさん:2012/01/15(日) 06:44:56.04 ID:SjKDw288
話ぶったぎってすんません。
最近Railsを始めた初心者です。
Rails3 のActiveRecordについて質問です。

Post
belongs_to :User
User
has_many :Posts

となっており、
PostsController#indexにおいて、

respond_to do |format|
format.json { render json: @posts }
end

という形で@postsを返す際に、Userモデルのnameを含めたいと考えました。

@posts = Post.select('posts.title,users.name').joins(:User).limit(10)
としてやると、
SELECT posts.title,users.name FROM `posts` INNER JOIN `users` ON `users`.`id` = `posts`.`User_id` LIMIT 10
となり、発行されるSQL的には良いのかなと思っているのですが、
返ってくる値に利用される値はposts.title のみになってしまいます。

なんかとんでもない初歩的なところで躓いてるような気がするのですが、
いろいろ調べたり試したりしてハマってしまってます。

なにか方針やヒントなど、
諸先輩方のご教示をいただければ幸いです。
654nobodyさん:2012/01/15(日) 09:12:28.97 ID:???
render json: posts.json(includes: :user)
てな感じかと
655nobodyさん:2012/01/15(日) 09:33:24.49 ID:???
普通に返ってくるけど。rails 3.1.3で試したら。

あと実コードは違うのかも知れないが、関連のシンボルは小文字で(:user)。

656nobodyさん:2012/01/15(日) 10:23:01.12 ID:nqvAfoHq
普段は(jQuery使わないので)気にしていなかったんですが、
assets/javascript/application.js に書かれている
//=require jquery
の実体(jquery.js)はどこにあるんでしょうか?

普通は、assets/javascript以下に置いてあるのかと思うんですが、ありません。。
公式サイトなどから毎回ダウンロードするような処理が組み込まれている(?)んでしょうか。

これから、jqueryを使おうと思っていて
自分のRailsのjqueryのバージョンがどうなってるか、
メンテナンスをどうするか
実体がどこにあるかわかならいと
調べようがないなと思い、質問させてもらいました。

ご存じの方教えてください。よろしくお願いします。
657nobodyさん:2012/01/15(日) 12:53:44.45 ID:8bjFmpXJ
jquery-rails gemが持っている。
GEM_HOME/gems/jquery-rails-VER/vendor/assets/javascripts
658nobodyさん:2012/01/15(日) 15:14:06.66 ID:???
659nobodyさん:2012/01/15(日) 15:42:40.18 ID:8bjFmpXJ
もう今日にもrcが取れそうだというのにw
660656:2012/01/15(日) 19:15:57.19 ID:???
>>657
ありがとうございます。
661nobodyさん:2012/01/16(月) 12:32:09.25 ID:???
EC2はサーバーを停止するとデータが消える 2年以上も前の話です。。
EBS用いれば、サーバー停止 してもデータは消えない
EC2はIPアドレスが毎回変わってしまう
EIP(Elastic IP)を用いて固定アドレスを割り当て可能
クラウドは障害がおきると何もできない
物理DC/サーバーも障害は起こる。
クラウドの良さは、障 害からの復帰に複数の手段があり、備えておける
http://www.slideshare.net/kentamagawa/aws-9170814

http://www.slideshare.net/kentamagawa/ss-8786548
http://www.slideshare.net/yuumi3/aws-on-rails


662653:2012/01/16(月) 17:41:59.25 ID:???
>>654
>>655
ありがとうございます。
rails 3.1.3 で普通に返ってきました。(関連のシンボルは実コードも:Userになっていたので修正しました)
rails console でクエリの形を色々いじくって、返り値の値をみていたのせいか、
実際にjsonとして吐き出した時と返り値が違っていたので、ちょっと混乱していました。すんません。
663nobodyさん:2012/01/16(月) 18:18:36.01 ID:It2/qso7
submitの二度押し防止で:disable_with使っているんですがクリックした後ブラウザバックするとボタンが非活性のままになっています。
元に戻すいい方法ありませんか?ちなみにfirefoxで発生します。
664nobodyさん:2012/01/16(月) 22:50:16.73 ID:???
>>604です
結局他の認証ツールは情報が少ないのとrailsバージョン的にresthul_authenticationを使って行くことにしました
目標はユーザー登録、ログイン、ログアウト、adminのみアクセスできるページを作ることです。
http://www.aise.ics.saitama-u.ac.jp/~gotoh/NetBeansWithRestfulAuthentication.html
こちらのサイトを参考に、メール認証機能、パスワード変更機能、パスワード忘れ機能を省いて行く事に挑戦しようと考えました
mail.rb以降を飛ばしてpermissionの生成に移り、その他必要のなさそうな機能追加を無視して進めています

users_controller.rbのcreateやupdateをどうするべきかわからないのでアドバイスをもらえないでしょうか

環境は上記サイトとほぼ同じでsqliteでなくmysqlを使っています
またresthul_authenticationはプラグインでなくgemでインストールしました
665nobodyさん:2012/01/16(月) 23:50:09.16 ID:???
なんかもう自分で自分のレスを見ていやになる・・・

すいません、>>664の質問はスルーでお願いします
もう時間もないのでアクセスできるコンピューターを限定して管理ページにだけ単純な認証機能をのせることで代用したいと思います
アクセス制限はapacheで公開するときに簡単に設定できるみたいですし・・・
スレ汚しすいませんでした
666nobodyさん:2012/01/17(火) 00:06:10.11 ID:???
Deviseなら情報腐るほどあると思うけど…。
権限はcancanでも使えばいいし。
667nobodyさん:2012/01/17(火) 10:45:36.97 ID:xcCT9DhO
マスタ/スレーブの冗長化の基本は4台1セット
http://d.hatena.ne.jp/uncafe/20110919

データベースのレプリケーション(複製)では、slaveに最低3台のサーバを適用している。
http://jibun.atmarkit.co.jp/ad/comp/112mitsu/01.html
668nobodyさん:2012/01/17(火) 10:51:58.18 ID:46QLTXdT
2012年1月は、C#がC++を抜いて3位につけたことが特に注目される。C++は長期に渡って
緩やかな下落傾向にある一方で、C#は上昇傾向が続いており、特にここ数年は上昇傾
向が強くなっている。

今後しばらくは、C#とC++で順位の入れ替えを繰り返すものと見られるが、最終的には
C#が3位、C++が4位に落ち着く可能性が高い。また、Objective-Cも急成長を続けており、
この傾向が続いた場合には、C#、Objective-C、C++という順位に変わっていく可能性もある。

上記のほか20位以内に入ったプログラミング言語としては、Rが19位に、Luaが20位に
入った点が注目される。

特に、統計処理や統計データのグラフィック化などに利用されるRプログラミング言語は、
ここのところ注目が高まっている。Rの機能拡張が、Googleの支援によって実現したこと
などもその一因となっているものとみられる。

 1 Java       17.479 (-0.082) 18ヵ月連続1位
 2 C         16.976 (-0.081)
 3 C#         8.781 (+0.576) 3位へ浮上。上昇傾向
 4 C++.        8.063 (-0.189) 4位へ下落
 5 Objective-C   6.919 (+0.114) 上昇傾向
 6 PHP        5.710 (-0.291) 下落傾向
 7 (Visual)Basic  4.531 (-0.226)
 8 Python.      3.218 (-0.274)
 9 Perl.        2.773 (+0.301)
10 JavaScript    2.322 (+0.123)
11 Delphi       1.576 (+0.331)
12 Ruby.        1.441 (-0.053)

http://news.mynavi.jp/news/2012/01/12/058/
669nobodyさん:2012/01/17(火) 13:37:22.61 ID:???
CoffeeScriptの中で、RailsRootのパスを取得することってできるのでしょうか?
670nobodyさん:2012/01/17(火) 14:14:16.72 ID:???
そんなのが必要になってる時点で何かおかしい。

どうしても必要ならコントローラから渡したり、erbにして取ったりはできる。
671nobodyさん:2012/01/17(火) 15:19:16.77 ID:???
>>669です。

>>670
「erbにして取る」と言いますと、どういうことでしょうか?
672nobodyさん:2012/01/17(火) 19:06:28.60 ID:???
それくらいはググれ
673nobodyさん:2012/01/18(水) 13:43:28.80 ID:???
すみません,質問させてください.
Railsで作成したプログラムからテーブルの列を変更することはできますか?

ユーザー側からテーブルの変更をできるようにしたいです.
674nobodyさん:2012/01/18(水) 14:11:45.08 ID:???
できなくはないけど、あまりやらない。
migrationと齟齬出るし。
使ってるものによっては、アプリサーバの再起動も要る。
ある人が列消したりしたら、同時に使ってる人はエラーになる。
おとなしくphp*admin使えば?
675nobodyさん:2012/01/18(水) 14:15:42.32 ID:???
住所録的なの作ってて,ユーザー側から項目追加できるようにしたいんですよね.
やっぱりmigrationで毎回保守してる人が回さないとダメかー
676nobodyさん:2012/01/18(水) 14:23:30.56 ID:???
それはデータの持たせ方による。
あらかじめ多めにカラム取っておくとか。
一部のデータはjsonにしてtextのカラムに入れるとか。
検索必要ならviewみたいなの用意しとくとか。
住所録ならそんなに増えないでしょ。
677nobodyさん:2012/01/18(水) 14:32:14.43 ID:???
今考えている代替案は,人名とフリガナだけ持ったモデル作って,has_manyで
項目ごとに独立したモデルを作る方法です.

[User]
name:string
furigana:string

[Attr]
attrname:string
attrdata:string
user_id:integer

な感じです.
で,別途AttrInfoモデルってのを作って項目の管理をする.
[AttrInfo]
attrname:string

正しいモデル図の書き方忘れちゃったから説明下手かもしれないですが,
そんな感じで子モデルとして項目を独立させる方法が楽かなぁと.
項目もフレキシブルな感じのほうがいいので..

今は,一つのフォームで複数の子モデル作成するとこで詰まってます.
678nobodyさん:2012/01/18(水) 14:43:48.36 ID:???
nested_attributes_for で
679nobodyさん:2012/01/18(水) 15:22:08.27 ID:???
くわしく知らないけどMongoDB向きなんじゃないの?
680nobodyさん:2012/01/18(水) 16:18:35.88 ID:???
>>678
Thx.できました!

>>679
MongoDBまだ理解してないですが,今回はユーザーが
DB操作せずに項目の増減できるようにしたいのでこんな感じになってます.
681nobodyさん:2012/01/18(水) 22:57:41.69 ID:NIE7IPJ6
rails3.1でherokuにあげたら、Application Errorになる。なぜ?
682nobodyさん:2012/01/18(水) 23:24:43.83 ID:???
asset pipeline周りでは。コンパイルしてる?
683nobodyさん:2012/01/19(木) 06:35:32.69 ID:???
Heroku | Dev Center | Rails 3.1 on Heroku Cedar
http://devcenter.heroku.com/articles/rails31_heroku_cedar
RAILS_ENV=production bundle exec rake assets:precompile
684nobodyさん:2012/01/19(木) 12:55:11.04 ID:???
>>681
ログには何と?
685nobodyさん:2012/01/19(木) 19:03:02.74 ID:kCr+nbf2
rails 3.0のEoLが何時までなのか調べても見当たらんのだが何時までなの?
686nobodyさん:2012/01/20(金) 01:48:49.34 ID:Bqw4Dvtw
Controllerからviewで使うヘルパー類をエラー吐かずに使う方法ってありますか?

html_escapeとかはERB::Util.で行けるけど
image_tagとかそこらへんが使えなくて困ってます
include AssetTagHelperで行けるのかと思ったけど見つかりませんと言われるし

687nobodyさん:2012/01/20(金) 07:40:20.22 ID:???
なんでそんな事したいの?
viewを使いたくない理由とは
688nobodyさん:2012/01/20(金) 09:40:22.52 ID:6rMlMhcM
>>687
Viewを使いたくないのではなくて、負荷を軽減するために
予めHTMLに変換してしまってDBに保存したいです

689nobodyさん:2012/01/20(金) 10:25:14.23 ID:???
それだとDBの負荷が上がるのでは。
Railsのキャッシュ使うのはダメなの?
690nobodyさん:2012/01/20(金) 10:47:01.04 ID:???
>>688
どう考えてもページキャッシュしたほうが負荷が低いな
691nobodyさん:2012/01/20(金) 10:57:41.22 ID:6rMlMhcM
>>689,690
言うなれば2chの掲示板みたいな機能でして
URLや画像をタグ化した状態で保存したいです

DB負荷を避けるために一定条件でDat落ちさせ
後ほどそれをテキストファイルに書きこんでdat化する作業もあるので結果的に楽なのです………


692nobodyさん:2012/01/20(金) 15:06:46.25 ID:0HmqnXsV
moduleなんだからincludeすりゃ使えるだろ
693nobodyさん:2012/01/20(金) 19:37:05.84 ID:???
>>691
ページキャッシュやフラグメントキャッシュがタグ化した状態で保存する機能なのだが
キャッシュのこと知らないで書いてるだろ
694nobodyさん:2012/01/21(土) 02:32:19.08 ID:???
3.2リリースage
Agile Web development with Rails のebookも更新されとる。
695nobodyさん:2012/01/21(土) 05:46:25.13 ID:vuwYpWFi
696nobodyさん:2012/01/21(土) 09:23:29.82 ID:rw9MCCDR
>>692
申し訳ありません、どれをIncludeすればいけますか?
先程書いたとおりassetHelperでは無理でした


>>693
ページキャッシュはしってますよ
でも、ページキャッシュではなくDBに保存しなければならないのです
そういう仕様なのでそう作らないと怒られるのですよー

他にも escape_javascriptをcontroller内で使いたいとか色々あると思うんです
697nobodyさん:2012/01/21(土) 09:29:06.70 ID:???
そんなレールから外れるような仕様は糞だ!って進退伺と一緒に稟議書あげろ。
698nobodyさん:2012/01/21(土) 09:38:50.70 ID:???
>>696
ページキャッシュで出来るHTMLをDBに入れればいいんじゃないの?
699nobodyさん:2012/01/21(土) 09:41:24.26 ID:???
cache_store をデータベースにしてreadでもwriteでもすればいいんじゃない?
ActiveSupport::Cache::Store を継承して要求しようにあったストアを作る。
700nobodyさん:2012/01/21(土) 09:44:14.53 ID:???
701nobodyさん:2012/01/21(土) 09:47:01.40 ID:???
gem install dalli

require 'dalli'
dc = Dalli::Client.new('localhost:11211')
dc.set('abc', 123)
value = dc.get('abc')
702nobodyさん:2012/01/21(土) 09:56:31.70 ID:???
>>696
全然センス無いクソ仕様だな。
DB重くなるだけじゃん。
ページキャッシュの方が速いし軽い。
703nobodyさん:2012/01/21(土) 23:00:45.95 ID:vuwYpWFi
704nobodyさん:2012/01/21(土) 23:03:51.32 ID:vuwYpWFi
<オープンソース Rubyフレームワークのご紹介>
http://kwansaiit.blogspot.com/2012/01/2012-01-1314it.html
705nobodyさん:2012/01/22(日) 00:32:20.37 ID:???
rubyしてる人って、新しい情報をドヤ顔で共有したがる傾向が強いよね
706nobodyさん:2012/01/22(日) 00:58:43.15 ID:???
みんな使ってるのはApache?

すごい重いんだけどおすすめなにかない?
707nobodyさん:2012/01/22(日) 01:22:57.72 ID:???
それだけでは判断できんわ。
メモリの量とかCPUとかディスクにもよるし。
メモリの使い具合にも、SQLにもよるし。
708nobodyさん:2012/01/22(日) 02:05:42.97 ID:???
>>705
rubyの方は極めて保守的だと思うよ。
Railsはそういう傾向あり。
709nobodyさん:2012/01/22(日) 06:31:01.16 ID:???
>>707
CPUは常時50%くらい
メモリも常に1Gは余ってる(4GB)
IOもそんなに多くない

でも、めっちゃ重いんだ
710nobodyさん:2012/01/22(日) 09:25:06.68 ID:???
必要なとこにindex張ってないとか
711nobodyさん:2012/01/22(日) 10:44:06.70 ID:sE8mL0/v
モデルに
rails generate migrate add_カラム名_to_テーブル名 カラム名:型
って書くと思うんですが、
カラム名の中にアンダーバーを使いたい場合はどう書けばいいのでしょうか?

712nobodyさん:2012/01/22(日) 11:54:22.60 ID:???
711です。
アンダーバーを使わずcamel caseで書けばいいのですね、
おさわがせしました。

713nobodyさん:2012/01/22(日) 12:47:08.93 ID:???
>>708
rubyはバージョン間の互換性が凄く低い
とてもじゃないけど、保守的とは思えない

学生の文化祭ノリで言語作ってるから性質が悪い
714nobodyさん:2012/01/22(日) 12:55:48.13 ID:???
>>705
前向きに言い換えよう
新しい情報をドヤ顔で共有する勇気!
715nobodyさん:2012/01/22(日) 13:06:10.63 ID:???
>>713
それは感じた事ないな。
1.8系と1.9系は中身かなり違うが、書く分には対した違いではない。
遥か昔の1.4とかに比べても、そんなに変わってないと思う。1.6辺りからだと尚更。

MLに「こうしたら?」みたいな提案はよくあるけど、かなりの確率でmatzにリジェクトされてる。

昔はserializeしたデータにバージョン間で互換性がなくて実質使えなかったが、そういうのも聞かなくなった。

学生ノリはPHPとかスゴいよね。
関数名のアンダーバーをバージョン上がる毎に付けたり取ったり。
716nobodyさん:2012/01/22(日) 13:13:09.46 ID:???
Railsの変化は速すぎ。
枯れてから使おうとか考えてる人には合わない。
仕事でもプロジェクト開始後にバージョン上げたりするし。
もちろんテストがあればこそできる話。
717nobodyさん:2012/01/22(日) 13:24:18.85 ID:sE8mL0/v
yml-mode.elってどこにありますか?

http://yaml-mode.clouder.jp/
ここみてもみあたらないんですが・・・・
718nobodyさん:2012/01/22(日) 13:25:30.57 ID:sE8mL0/v
すみません。elispのとこにありました
719nobodyさん:2012/01/22(日) 13:27:49.79 ID:???
Rails の Symbol#to_proc がrubyに入った時はビックリしたわ。
新しい流れだなと。
720nobodyさん:2012/01/22(日) 13:33:23.09 ID:kpA61za+
"Ruby"じゃなくて"Rails"の互換性ってどうなの?
Rails1.2からRails3.1に移植したら大変かな?
721nobodyさん:2012/01/22(日) 13:45:54.13 ID:???
>>715
PHPはとってつけたような関数が多すぎるのがな。
722nobodyさん:2012/01/22(日) 13:46:36.87 ID:???
>>720
かなり大変。
2系から3系で結構苦労した。
723nobodyさん:2012/01/22(日) 13:53:49.66 ID:???
>>720
無茶苦茶大変。
DBだけ残して新しく作る方が楽かも。
もしくはDBも新しくして、移行プログラム走らせるとか。
habtmみたいな、もう誰も使ってないのが使われてそう。

いずれにしろスキル要るし、1系から3系まで知ってる人はそんなに居ない。

724720:2012/01/22(日) 14:04:05.41 ID:???
>>722-723
うわ、ありがとう
じゃ、覚悟しとくわ
まず一度移植にトライしてみて
ダメだったら1から新しく作るわ
725nobodyさん:2012/01/22(日) 15:20:26.03 ID:???
1から3まで全部知ってる人を見つけたからって移植を頼むなよ。絶対に頼むなよ。
726720:2012/01/22(日) 16:54:14.92 ID:???
あ、今Wiki見て知ったけど、
昨日1月20日に最新版Rails3.2出たんだな

>>725
ということで、Rails1.2からRails3.2への移植でおながいします
727nobodyさん:2012/01/22(日) 17:12:54.33 ID:???
どうやったら行けるかね。
もうrake rails:updateとか無理だから、
新しく3.2でプロジェクト作る。
app/ とかを古い方から持ってくる。もしくは新しい方から、Gemfile や config周り持って行く。
routes 移植。
プラグイン周りとか移植。

最後のは移植しないで、例えば新しいプラグイン入れて、認証のencryptのとこだけ差し替えるとか。

どちらにせよ、茨の道。
728nobodyさん:2012/01/22(日) 19:09:32.81 ID:???
729nobodyさん:2012/01/22(日) 19:58:58.08 ID:???
そんなに移植って大変かなあ?
具体的にどの辺りが大変だったのか参考までに聞きたい
Ajax周りは3系でガラッと変わったから面倒だったけど
730nobodyさん:2012/01/22(日) 22:21:01.46 ID:???
Railsで、同じURLに対して、
・ブラウザでの通常のアクセスと
・JavaScriptとかでやってくるAPI的なアクセス
をコントローラ側で区別したい場合、どういうふうにするんでしょうか。
(a) Acceptヘッダーを見るのか、
(b) 独自にX-FooBarヘッダーをつけるのか
(c) *.jsonや*.xmlへのアクセスはAPIと見なすのか
よろしくお願いします。
731nobodyさん:2012/01/22(日) 22:31:37.18 ID:???
params[:format]
732nobodyさん:2012/01/22(日) 22:41:09.29 ID:???
自分は(c)でやってる。
(a)とか(b)だと使いまわしが面倒じゃない?
733nobodyさん:2012/01/22(日) 23:19:32.46 ID:???
要求仕様によるけど、 xhr? で間に合うケースもあるかもね。

734720:2012/01/23(月) 00:46:09.88 ID:???
>>727 (>>729)
どうもぉ〜
さっき本屋で立ち読みしてきたけど
Rails3.1の仕様もそ〜んなに変わってるようには見えなかった
でも、rhtml → erbまで違うとはね・・・

ま、多分、コンテンツになる部分だけ残して
あとは全部Rails3.2で作ることになりそう
インフル罹ったみたいなんで寝ますわ・・・
735nobodyさん:2012/01/23(月) 01:30:53.30 ID:???
>>730
APIとブラウザの違いというか、返すデータの種類が違うなら
UAではなく求められているデータの種類で分けるべきでは
要求されてるものがブラウザがHTMLでAPIがjsonやXMLなら
:formatが違うから(そのようにするべきだろう)
単にrespond_toで分ければいいだけだろ
736nobodyさん:2012/01/23(月) 02:34:29.77 ID:???
>>735
返すデータの種類を、拡張子で判断するよりも、Acceptヘッダーを見るほうが、本来は正しいあり方なんじゃないでしょうか。
/foo/bar/123
/foo/bar/123.html
/foo/bar/123.xml
/foo/bar/123.json
これらは、ほんらいは同じリソースのはずで、単に表現形式が違うだけにすぎない。
なのに別々のURLを割り当てるのは、おかしいように思います。
737nobodyさん:2012/01/23(月) 08:24:44.75 ID:???
リソースにURIを割り当てるのがRESTの考え方だからねぇ。
jsonが欲しければ.jsonで取るのは自然だと思うよ。
フォーマットが違うだけだし。
738nobodyさん:2012/01/23(月) 08:30:21.94 ID:???
ヘッダを変える方法だと、ブラウザでの操作がしにくくなる。
739nobodyさん:2012/01/23(月) 09:52:44.98 ID:X3Xu6cIF
RESTだから。としかいいようがないな。
740nobodyさん:2012/01/23(月) 10:47:27.27 ID:???
Acceptは受け入れ可能なフォーマットを書くところであって要求を書く場所じゃないから
741nobodyさん:2012/01/23(月) 20:43:45.49 ID:???
>>737
>フォーマットが違うだけだし。
だから違うURLを使うのはおかしいって話でしょ。
表現が違ってもリソースはひとつなんだから、本来ならURLもひとつにすべき。
742nobodyさん:2012/01/23(月) 21:08:30.69 ID:???
じゃあAcceptで実装したらいいんじゃないの。
そこまで考えまとまってるなら別に他がどうとか気にする必要ないよ。
743nobodyさん:2012/01/24(火) 11:10:30.83 ID:rjvP9n7H
Rails3.1何ですけど
プリコンパイルを一切使わない設定って出来ませんか?

CSSでクロスブラウザ対策してたりするとコンパイルこけるし
色々不便なので一切使わないようにしたいのですが
744nobodyさん:2012/01/24(火) 14:23:23.89 ID:???
asset pipeline使わないという事なら、config/application.rb に設定ある。
他は、 config/environments/production.rb
745nobodyさん:2012/01/24(火) 15:01:11.36 ID:???
/publicに置けばいいんじゃないの
それだとhelperが使えないんだっけ?
746nobodyさん:2012/01/24(火) 15:24:13.68 ID:R2GYQ8Ee
747nobodyさん:2012/01/24(火) 17:34:59.60 ID:/isHqZPr
railsに関する質問ってここでしてもいいんですかね?
748nobodyさん:2012/01/24(火) 17:52:55.66 ID:???
ダメに決まってるだろ
749nobodyさん:2012/01/24(火) 18:08:32.06 ID:/isHqZPr
>>748

そ、そんな
だめなんですか

特例でおしえていただきたいんですが
750nobodyさん:2012/01/24(火) 18:13:03.92 ID:/isHqZPr
とりあえずかきこんじゃいます。

今ちいさなアプリケーションをrailsで作っているのですが、

formにメッセージを書き込む際に
あわせて書いた人のユーザーid を取得したいのですが、
どこに記述してよいかわかりません。

formの一部を抜粋するとこうなってます↓

<div class="field">
<%= f.label :message %><br />
<%= f.text_area :massage %>
</div>

お願いいたします
751nobodyさん:2012/01/24(火) 18:14:55.52 ID:???
押しが強くてワロタ
752nobodyさん:2012/01/24(火) 18:16:14.91 ID:???
massage エロス
あとユーザIDってのは自分で入力させるの?
それともセッションかどっかに入ってるの?
753nobodyさん:2012/01/24(火) 18:22:49.82 ID:/isHqZPr
押し強くてごめんなさいw
分からなくてすごく困ってたんですw

ユーザーのidは書いているユーザー一人一人が持っていて、
<%= current_user.id %>
とかけば出力されます。

理想としてはメッセージを送ると自動でuser_idもDBに送られるようにしたいです。。
754nobodyさん:2012/01/24(火) 18:54:33.22 ID:???
Railsでは普通、idは入力させたり、フォームから送るものではない。
セーブした時にDBから割り当てられるもの。

もし、任意のid(初心者ならこのカラム名はやめた方が良い)を入力させるなら、
重複が無いかなどを調べないといけない。
755nobodyさん:2012/01/24(火) 18:57:49.67 ID:???
んーと、送り主のidはフォームからは普通送らない。
コントローラで current_user.id とかやって、メッセージにセットする。
756nobodyさん:2012/01/24(火) 19:16:19.62 ID:/isHqZPr
idはuserテーブルののidをとりあえずmessageテーブルにuser_idとしてながしこみたいのです…

コントローラーでやるんですね、
ちょっといろいろためしてみます!
757nobodyさん:2012/01/24(火) 19:31:55.63 ID:/isHqZPr
書き方がわからなかったので、フィーリングで、
コントローラーのdef createところに
@message = Message.new(params[:Message])
params[:user_id] = current_user.id

とかいたのですが、うまく動かず…orz
758nobodyさん:2012/01/24(火) 19:33:23.03 ID:???
params に渡してどうするのよ。
message に渡しなよ。
@message.user_id = current_user.id
759nobodyさん:2012/01/24(火) 19:38:15.04 ID:/isHqZPr
うおおお ちゃんと登録されました!

た、助かりました…!ありがとうございます
760nobodyさん:2012/01/25(水) 01:09:22.67 ID:???
そういや>>736あたりの話なんだけど、
Railsでは /foo/123 には /foo/123.xml とか /foo/123.json とか :format がつけられるじゃん?
これって、コンテナリソースにはつけられるの?
つまり /foo/.xml とか /foo/.json とかはできるわけ?
それともコンテナリソースに対して xml や json を要求する場合はまた違う方法になるの?
761nobodyさん:2012/01/25(水) 07:42:06.57 ID:???
index.json
762nobodyさん:2012/01/25(水) 08:11:31.32 ID:CoUa4Jns
foos.xml とか foos.json
763nobodyさん:2012/01/25(水) 10:11:00.50 ID:???
config/route.rbでどうとでもできるからな
764nobodyさん:2012/01/25(水) 11:16:46.09 ID:???
テーブルの、あるフィールドの最大値を取得したいのですが、うまくいきません。。。

たとえばFooというテーブルのbarというフィールドの最大値を取得したいときは、以下のように書けば良いらしいのですが・・・

Foo.maximum('bar')

しかしながら、こう書くと『no method error』になるのです。
こちらの環境はRuby1.9.3、Rails3.1.3です。

maximumメソッドについては、以下のサイトで見つけました。
http://railsdoc.com/references/maximum

これによると3.1.0までは対応しているようですが、3.1.3にはもうmaximumはないということでしょうか?
765nobodyさん:2012/01/25(水) 13:21:04.50 ID:???
普通に取れるけど。3.1.3と3.2.0で試した。
そのフィールド無いんじゃないの?
766nobodyさん:2012/01/25(水) 14:04:53.51 ID:T66svPqt
user
friend
entry
があります。
user にはstatusがあって、statusがwarningの物は友人でなくとも無条件で表示したいです

entry.joins( :user => :friend ).("users.status = ? OR friends.post_user_id = ?" , "warning" , session[:user_id] )

これで取れるかと思ったのですが、users.status = ?がスルーされているのか
後のfriendの記事しか取れません

joinについて何か大きな勘違いをしているのかもしれませんorz
どうすればとれますか?
767nobodyさん:2012/01/25(水) 14:19:09.42 ID:???
>>765
すみません、説明不足でした。
正確には、ある条件でデータを絞った後で、その中でのフィールドの最大値を取得したいということなのです。

まずFooというテーブルにbar、bazという2つのフィールドがあるとします。
イメージ的には、やりたい内容は以下のようなことです。
-------------------------------------
f = Foo.find_by_bar(○○○)

puts f.maximum('baz')
-------------------------------------

このやり方ですと、undefined method になります。

確かに、Foo.maximum('bar')という風に、絞り込んだものに対してではなく、直接最大値を取得するやり方ならうまく取れました。
絞り込んだものに対しては、maximumは使えないのでしょうか?
768nobodyさん:2012/01/25(水) 14:54:10.77 ID:???
>>767です。
すみません、自己解決しました。
以下の方法で、条件を絞ったうえでの最大値を取得できました。

Foo.maximum(:bar, :conditions => {:baz => ○○○})

お騒がせしてすみませんでした;;
769nobodyさん:2012/01/25(水) 20:32:05.37 ID:CoUa4Jns
>>767
ところでFoo.find_by_barだとfはFooのインスタンス1つになるわけだが。

770nobodyさん:2012/01/25(水) 21:57:29.42 ID:???
railsの
model = Model.new(param[:prefix])
model.save()
ってやり方は、悪意あるユーザがフォームにないパラメータを送ると
意図しない属性も変更されてしまうと思うのですが、そんなことないですか。
771nobodyさん:2012/01/25(水) 22:04:45.35 ID:???
mass assignできなくすれば大丈夫
772nobodyさん:2012/01/26(木) 05:29:31.01 ID:WYeK+tHX
みなさんは高速化のためにどんな方法をとってますか?

例えば、ブログなんかで
最新のコメント

なーんてものがありますよね?

ああいう、頻繁に更新される可能性がある一箇所のせいで結構つらい思いをすることもあります
ログイン→ようこそ◯◯さん等もそうですが

いくつか考えたのですが、ページキャッシュしてしまい
そういった部分を全てAjax等で非同期読み込み

上でも出てたJavascriptでCookieを調べて割り振り
どちらも、Rails外での話なのでどうしても面倒くささを感じてしまいます……
773nobodyさん:2012/01/26(木) 07:00:43.56 ID:LIf9fd2V
フラグメントキャッシュ使えし


ところで、フラグメントキャッシュって一定時間で破棄って出来ない?
5分で破棄したいのだけど……
774nobodyさん:2012/01/26(木) 11:45:32.46 ID:???
>>771
>mass assignできなくすれば大丈夫
ありがとうございます。でもこれってデフォルトでは作る側がいちいち設定する必要があるんですよね。
設定しなかった場合は、悪意あるユーザからの攻撃をいとも簡単に受けてしまう。

なんでデフォルトで禁止してないんですかね。
ttp://d.hatena.ne.jp/halflife/20081006/1223302382
> みたいにmass assignmentを使ってしまうと、entry[user_id]=1 とか適当なパラメータを送るだけで誰か他のユーザの投稿として Entry を更新することができたりするわけで。
> もちろん手を抜くなとか忘れるのが阿呆だとかはあるかもしれないけど、わたしのような初心者には結構危なく感じた。
>
> なんでRailsはデフォルトでmass assignment不可にしないんだろう?
> デフォルト不許可にしてしまうと、スキーマが変更されるたびに合わせて attr_accessible を修正しなきゃいけないとかDRYじゃねえよウゼーという感じなんだろうか。
775nobodyさん:2012/01/26(木) 11:55:04.00 ID:???
findした段階で大体防げるからなぁ。
@enty = current_user.entries.find(params[:id])
みたいに。
そう書いてないとダメだが。
776nobodyさん:2012/01/26(木) 12:28:43.36 ID:???
>>772
最近ならそういった情報で更新されにくいものは
クライアントサイドのlocalStorageにいれてしまうってのもありだな
サーバーへアクセスされないからAJAXの負荷が無い
777nobodyさん:2012/01/26(木) 16:01:35.70 ID:???
>>775
なんでそれで防げたことになるんですか?
今問題にしているのはcreateやupdateの話であって、findは関係ないような。
778nobodyさん:2012/01/26(木) 16:30:47.72 ID:???
updateの時は初めにfindするし、
createでは
@entry.user_id = current_user.id
するだろ。
しなければもちろん外からセットされる。プロテクトしてなければ。

Railsに限った話ではなくて、そう作ればそうなるよという事。

779nobodyさん:2012/01/26(木) 18:58:14.63 ID:???
>>778
もしかしてuser idのことだけ言ってますか?>>775
>findした段階で大体防げるからなぁ。
と言っているのが不思議だったんですけど、user id *だけ* みればそうかもしれません。
しかし774などで指摘していることは任意のフィールドに当てはまることであり、
「findした段階で大体防げる」ようなものではないんじゃないですか。

780nobodyさん:2012/01/26(木) 20:03:46.49 ID:RmSk4BIq
rails3.2でcsvのfixtureを読み込まなくなって
移行しようにも苦労しているのですが
おすすめのcsv読み込みツールってありますか?
781nobodyさん:2012/01/27(金) 11:02:32.60 ID:???
> >mass assignできなくすれば大丈夫
> ありがとうございます。でもこれってデフォルトでは作る側がいちいち設定する必要があるんですよね。
> 設定しなかった場合は、悪意あるユーザからの攻撃をいとも簡単に受けてしまう。

これで終わりじゃん
782nobodyさん:2012/01/27(金) 14:38:18.12 ID:lH99fQFB
Riding Rails: Rails 3.2.1 has been released
http://weblog.rubyonrails.org/2012/1/26/rails-3-2-1-has-been-released
783nobodyさん:2012/01/27(金) 18:06:51.09 ID:???
route.rbに関しての質問です。
pages/:idの:idの部分を、ユーザの名前にしたくて困っています。
route.rbを
match "'pages/:username" => "pages#show", :via => :get, :path => :name
にしてrake route すると、
pages/usernameというルートしかできず…
方法ご存知な方いらっしゃいますか?
784nobodyさん:2012/01/27(金) 22:26:17.58 ID:50WK7S02
class Page
def to_param; name; end
end

rails c
>> helper.controler = app
>> app.page_path(Page.create(:name => 'foobar'))

デフォルトのルーティングだと、名前であろうとパラメータ的にはあくまで
:idというパラメータとして渡されてくるので、:idだがnameとして扱うこと。
785nobodyさん:2012/01/28(土) 05:39:03.61 ID:???
>>779
なぜわざわざ770みたいな脆弱な書き方を覚えてしまったのか
それは「横着な書き方」であって脆弱なのは当たり前だし、それでもRailsにはその脆弱さを防ぐ方法がいくつも備わってる

ちなみに775の言ってる事は俺も的外れだと思う
786nobodyさん:2012/01/28(土) 10:17:16.60 ID:???
>>785
scaffoldが
foo = Foo.find(params[:id])
foo.update_attributes(params[:foo])
foo.save
みたいなコードを吐く以上、それがRailsの標準的なやり方と見なされてもしょうがない。
ところで
>それでもRailsにはその脆弱さを防ぐ方法がいくつも備わってる
って言ってるけど、具体的にはどんな方法があるの?
いくつもあるなんて知らなかった。
787nobodyさん:2012/01/28(土) 18:10:10.01 ID:???
>>764

このサイト知らなかったな
微妙に間違っているが、すごい解説の量だ!
788nobodyさん:2012/01/28(土) 20:25:27.97 ID:kusQOV3z
attr_accessible と attr_protected
http://blog.digital-squad.net/article/106792109.html

Use attr_protected or we will hack you - Blog Articles - LessEverything
http://lesseverything.com/blog/archives/2008/03/11/use-attr_protected-or-we-will-hack-you/





789nobodyさん:2012/01/28(土) 21:31:22.30 ID:kusQOV3z
attr_accessibleは、ActiveModel::MassAssignmentSecurityの機能で、
newやらupdate_attributesやらでレコードの属性を「一括設定してもよい」属性を
指定するもの。逆に「一括設定を禁止」するattr_protectedとペアで考える。
http://read2ch.com/r/php/1292032736/#t508
790nobodyさん:2012/01/28(土) 21:47:54.91 ID:kusQOV3z
791nobodyさん:2012/01/29(日) 14:01:57.04 ID:???
れいるず、速習のコツを教えてくだされ。
792nobodyさん:2012/01/31(火) 07:44:07.71 ID:???
RailsによるアジャイルWEBアプリケーション開発っていうすばらしい本が出てるからその通りにショッピングサイトを作ればオッケー
793nobodyさん:2012/01/31(火) 11:18:03.40 ID:???
翻訳者宣伝乙
794nobodyさん:2012/01/31(火) 19:00:01.98 ID:???
>>792
で、やってる途中で新バージョンが出る
795nobodyさん:2012/01/31(火) 21:42:32.22 ID:J/mA32Fb
Rails Guidesでええやん。
796nobodyさん:2012/01/31(火) 22:06:34.42 ID:Nhw8SxC0
When I did all the programming for the original version of Basecamp back in 2003,
we ended up shipping with just about 2,000 lines of code.
http://37signals.com/svn/posts/3094-code-statistics-for-basecamp-next

37signalsのBasecampは米国企業上位500社の321社が利用中 ? SEO Japan
http://www.seojapan.com/blog/37signals-and-fortune500

Ruby on Rails開発者のDavid Heinemeier Hanssonによる「起業の学校」講演!
http://toshio.typepad.com/b3_annex/2008/04/ruby-on-railsda.html
2000人の顧客が月40ドルを12か月払えば、100万ドルになる。

797nobodyさん:2012/01/31(火) 22:10:27.23 ID:Nhw8SxC0
798nobodyさん:2012/01/31(火) 23:23:30.79 ID:Nhw8SxC0
799nobodyさん:2012/02/01(水) 09:50:30.32 ID:???
ActiveRecordで取得したレコードに対してeachメソッドみたいに全カラムにループでアクセスする方法ってありますか?

Test.find(1).each do |key, value|
#処理
end

このような処理はできないんでしょうか?
800nobodyさん:2012/02/01(水) 10:24:09.07 ID:???
自己解決しました。
attributesメソッドでハッシュが返ってきますね。
801nobodyさん:2012/02/01(水) 21:36:14.66 ID:MwDJMjTg
Twitter Bootstrapが大幅バージョンアップ!して凄まじいことに・・・ | IDEA*IDEA
http://www.ideaxidea.com/archives/2012/02/twitter_bootstrap_v2.html

http://twitter.github.com/bootstrap/index.html
https://github.com/twitter/bootstrap/
802 忍法帖【Lv=13,xxxPT】 :2012/02/01(水) 23:04:02.37 ID:???
!test
803nobodyさん:2012/02/02(木) 11:31:58.44 ID:ppveFy64
サイト重すぎてヤバイんですが、何かおぬぬめのてくにっくやとりあえずここみとけ!って対処法あります?

調べたところ
データベースアクセス周りが7割くらい占めてました

かるく調べたんですが
めむきゃっしゆ?
find_by_sql
インデックスをはる

あたりが王道のようですが、これでどのくらいかわるものですか?
804nobodyさん:2012/02/02(木) 13:06:40.10 ID:???
インデックスはってないなら、まずはそこから
データ量によっては10倍以上効く
805nobodyさん:2012/02/02(木) 13:07:29.66 ID:???
ケースバイケース
806nobodyさん:2012/02/02(木) 13:25:21.92 ID:nGOtgXLd
>>804
ありがとうございます

find_byでしょっちゅう検索するものに貼ってみます

snsで、データはユーザー数が500くらい、コメント数が2万くらいです

>>804
確かにそうですよね……
うーんと、それじゃあ

twitterのようなリアルタイム性があるページキャッシュの効かないサイトを運営した場合
どのようなアプローチが考えられますか?
毎読み込みごとに結構な数のクエリが発行されるでしょうし、人数もとても多く、拡散などでリアルたいむに個々のつぶやきの情報もかわる
似たような機能があり、そこがボトルネックとなっております


例えば、ヘッダーフッターサイドバーと言った外枠だけをページキャッシュして、jqueryで内側を非同期読み込みー

などという方法で、とりあえずレスポンス速度のみは劇的に改善できるとも考えたのですが
すごくクールじゃないですよねー……
807nobodyさん:2012/02/02(木) 14:24:52.03 ID:???
いやー、別にクールじゃないわけじゃないと思うけどね
github なんかそんな感じじゃん
808nobodyさん:2012/02/02(木) 15:27:49.48 ID:???
泥臭くてもレスポンスよくなりゃ正義だと思うよ。
メンテナの間で同意とれてりゃだけど。
809nobodyさん:2012/02/02(木) 17:34:08.38 ID:???
ruby eeとかも考えられるけど
それ以前にパンクする規模じゃない気がするなあ
mysqlあたりのメモリ設定とかも見直したら?
810nobodyさん:2012/02/02(木) 19:03:48.10 ID:79jXgfNj
>>807
言われてみれば……!

>>808
ですよねー……
中でなにやってようが早ければユーザーさんはかまいやしないですよね

>>809
なんとこんなものが……

Mysqlのメモリをデフォルトの16MBから500MB(搭載は4GB)まで増やしたらそれだけでかなり快適になりました
ありがとうございました
811nobodyさん:2012/02/02(木) 19:26:54.19 ID:???
>>810
それ、スモールサーバの設定だったんじゃないかな
MySQLのチューニングは探せばいろんなページに設定例あるし本も出てるよ
812nobodyさん:2012/02/03(金) 12:11:30.89 ID:NPWpUqid
ページキャッシュのディレクトりってどこで指定できますか?
Rails2では
Actioncontroller::Base.page_cache_directory = "/var/www/hoge/public/page_cache" こんな感じ?
だったようですが、3だとうまくいきません。

やりたいことは、「一定時間でのキャッシュの削除を簡単にする」です。
10分毎にページキャッシュをクリーンしたいので、cron で rm * で一括で消したいと考えております
813nobodyさん:2012/02/03(金) 17:24:14.90 ID:hJMEWrmo
ものすごい初心者なので質問のレベルが低いかも知れませんが、質問させてください。
勉強をかねて掲示板を作成しようと思ったのですが、
resourcesのネストでうまく行かなくなってしまいました
rails3.1.3
ruby1.9.2

スレッドをtopic,レスをpostという名前でモデルをscaffoldで作って、モデルで一対多の関係を持たせて
routes.rbに
resources :topics do
resources :posts
end
の様なルーティングを作り、post周りのビューのpathヘルパーをtopic_post_pathの様に変えました
http://localhost:3000/topics/1/posts へのアクセスはうまく行くのですが
http://localhost:3000/topics/1/posts/new へのアクセスは
Routing Error No route matches {:controller=>"posts", :format=>nil}
の様にエラーが出てしまいます
どこをどの様に変更したらhttp://localhost:3000/topics/1/posts/new でpostを作成できるでしょうか?
どなたか回答していただけたらうれしいです よろしくお願いします
814nobodyさん:2012/02/03(金) 18:00:44.99 ID:???
new_topic_post_path(@topic)
もしくは
new_topic_post_path(topic_id: @topic.id)
みたいにしてないのでは
815nobodyさん:2012/02/03(金) 18:21:28.06 ID:???
コマンドラインから
rake routes
実行して、できるパスを確認しよう
816nobodyさん:2012/02/03(金) 20:29:33.95 ID:hJMEWrmo
>>814 >>815 お二方ご回答ありがとうございます!

色々試した結果、postsコントローラに @topic = Topic.find(params[:topic_id])
を作っていなかった事が原因みたいでした
リンク先のurlはセオリー道理に作れていたのにrouting error だったのですごく悩んでしまいました。
回答ありがとうございました。
817nobodyさん:2012/02/04(土) 08:28:37.17 ID:Prkek0Dn
>>811
申し訳ありません、レスありがとうございました
調べてみます


>>810の「MySQLのメモリを大きくする」を行なってから
Railsがめちゃくちゃ重くなってしまいました

webrickサーバーでのテストでは
F5を2,3回押すだけでRuby1.8のCPU使用率が90%近くまで跳ね上がり1分近くフリーズします

ちょっと重めのTOP(以前はローカル環境なら1秒程度で表示)が、20秒ほどかかるようになってしまいました
更に10秒くらいの間Mysqldの使用率が100%に張り付きます

PHPmyadminから直でSQL打つと一瞬で帰ってきます

メモリ変更に関してはバックアップに戻したのですが速度は元に戻りません

原因がMysqlにあるのか、Rubyにあるのか、Railsにあるのかわからなくなってしまったのですが
どういった対処がとれますでしょうかorz


1.Apache+Passengerで起動してもページ表示時Rubyの使用率90%
2.このアプリを別サーバーに持って行くとサクサク動く

ということで、Mysqlとの接続周りで問題が発生している?
development.log production.logを見ても特にエラーは出てません
どこを確認すればよろしいですか?
よろしくお願いします
818nobodyさん:2012/02/04(土) 08:47:22.10 ID:WPtHudN4
Focus 100% on your code, and never think about servers, instances, or VMs again.
819nobodyさん:2012/02/04(土) 08:49:46.88 ID:???
なに、ローカル環境だけで重いってこと?
ログが肥大化してんじゃないの?

developmentなら再読み込みでCPU使用率急に上がるのは特に変じゃない。

以前は重くなかったって言ってるけど、「以前」というのが開発スタートしたてとかだったら、実装が悪い。
820nobodyさん:2012/02/04(土) 08:53:05.62 ID:Prkek0Dn
>>818
ググッて来ましたが違うようです

>>819
ありがとうございます。
本番環境もローカルもダメです

本番サーバーでいきなりMysqlのメモリ増やす→あれなんか重い
ローカルで確認の為にMysqlのメモリ増やす→あれなんか重くなった


両方設定戻しても重さは元に戻らず
両方Productionで動かしても変わらないです
ログは定期的に消してます

”重くなった”は、2日前と比べてです
データ量も殆ど変わってないですし、別サーバー持ってくとサクサク動くので
Mysqlのメモリをいじったのが引き金になったようです
821nobodyさん:2012/02/04(土) 09:03:56.06 ID:Prkek0Dn
すいません、今Sqliteで同じものを動かした所めちゃくちゃさくさく動きました
どうやら問題はMysqlにあるようです
そうなると、Mysqlスレになるのかな?

アドバイスありがとうございました
822nobodyさん:2012/02/04(土) 09:04:47.54 ID:???
なんでただの英語ぐぐってるんだよ…
メモリの設定もいろいろあるから、どこを500MBに変えたかだな
823nobodyさん:2012/02/04(土) 09:12:14.59 ID:Prkek0Dn
>>822


key_buffer?を増やしてみました
その後色々いじったので何がなにやら……

PHPMYadminで赤いところを見ると

Innodb_buffer_pool_reads 526 InnoDB がバッファプールの内容を利用できず、シングルページ読み込みを行わなければならなかった論理読み込みの回数
Handler_read_rnd_next  86 G データファイルの次の行を読み込んだリクエストの数。この値が高いのはテーブルスキャンを大量に実行しているためです。一般にこれはテーブルのインデックスが不適切か、クエリがインデックスを利用するように書かれていないことを意味します
Created_tmp_disk_tables 1,598 k ステートメント実行中にサーバがディスク上に自動生成した一時テーブル数。Created_tmp_disk_tables の値が大きい場合は tmp_table_size の値を増やしてディスク上ではなくメモリ上に一時テーブルを構築した方がよいかもしれません
Opened_tables 414 開いているテーブルの数。開いているテーブルが多い場合はおそらくテーブルキャッシュの値が小さすぎます

82Gのところがなんかおかしい気がします
824nobodyさん:2012/02/04(土) 11:37:03.61 ID:CRUXYrsz
MySQLとrails同じサーバーで動かしてるの?
MySQLにメモリ割り当てすぎてスワップ使ってるとかなんじゃないかなぁ。
825nobodyさん:2012/02/04(土) 11:58:01.12 ID:???
アプリのルートで表示させるページのコントローラーってどうするのが定石ですか?

今まではどこかのサンプルで見たIndexControllerって名前でずっとやってきてました。
root to: 'index#home'
みたいな感じで。
特に不都合はないですが、もっと良い方法とか命名とかありますか?
826nobodyさん:2012/02/04(土) 11:59:11.63 ID:???
別にそれで何の問題もないのでは。
827nobodyさん:2012/02/04(土) 13:06:37.78 ID:???
>>825
俺はmain#indexにしてる
828nobodyさん:2012/02/04(土) 13:46:13.35 ID:???
>>812
config/environments/production.rbが設定ファイルで、
config.action_controller.page_cache_directory = "ここで設定"

参考) http://railsdoc.com/cookie_cache


>>823
状況がよくわからんので箇条書きで色々と書くね
鵜呑みにせずに参考程度にしてください

・インデックスをはってないのは間違いないし、そこが絶対にボトルネックになってると思う
>Handler_read_rnd_next  86 G から察するにインデックスを適切に張ってないのは間違いなくて、データを全スキャンしてる

・Railsには一つのSQLクエリごとに何秒かかったかをログにしてくれているのでそれを見る
 あなたの場合はこれをまず詳細に分析するべきだと思う
 表示はms(マイクロ秒)での表示 1000ms=1秒 適切なクエリなら数msから数十msで返って来ているはず
 インデックスを適切に張っていないと遅いクエリ(スロークエリ)が頻出しているはず

・MySQLのストレージエンジンにはInnoDBとMyISAMがある
 MySQL5.5以降はデフォルトがInnoDBで、それ以前のバージョンならMyISAM
 で、「MySQLに割り当てられるメモリを大きくする」という場合に、MyISAM使ってるのにInnoDBの割当メモリを大きくしても意味が無い 逆もしかり

以上です
とにかくインデックスきちんとすれば4Gもメモリ積んでるサーバーなら余裕で捌けるはずなので頑張ってください
829nobodyさん:2012/02/04(土) 16:07:59.57 ID:Prkek0Dn
>>824
同じサーバーで動かしています
どうやらそのようでした

再起動したら少しましになりました

>>828
ありがとうございます。
InnoDBを使っていたので全く見当違いのメモリを増やしておりました
インデックスを貼ろうと思ったのですが、ちょっと初心者もいいとこでどこに貼っていいのか……

Railsの効率の悪いSQLを探知してくれるプラグイン?あったと思うのですが3になってから使えなくなってしまいまして……

830nobodyさん:2012/02/04(土) 17:05:32.58 ID:s47e9LRe
とりあえずmysqlのスロークエリログくらい見ないと。
831nobodyさん:2012/02/04(土) 17:16:05.77 ID:Prkek0Dn
>>830
ですね、痛感しました
しかし、スロークエリログを吐き出す設定にしているのにファイルが出力されません
なんででしょう

とりあえず色々いじってみたいと思います
832nobodyさん:2012/02/04(土) 19:18:04.98 ID:???
>>831
バックアップしとけよ
あといきなり本番サーバさわるな
833nobodyさん:2012/02/05(日) 00:35:52.53 ID:83n8dgCi
プリコンパイルしたファイルって
hogehoge**************************
みたいになりますが、application.jsという形で生成はされないですか?

アクセスのたびに毎回ライブコンパイルが走り困っております
834nobodyさん:2012/02/05(日) 02:48:02.82 ID:???
railsとcakephp
初心者にはどちらが向いてますか?
railsの場合はレンタルサーバーの環境ごと考えなきゃいけないから
面倒くさいのかな?という認識
835nobodyさん:2012/02/05(日) 07:21:14.51 ID:???
どっちも習得の手間はかわらないと思う。
使いたいサーバで選んだらいいんじゃない?
OSがWindowsでVMとか使う気ないならPHPの方が気楽に開発環境整えられるかもな。

Railsの場合は使えない鯖ではそもそも考えるだけ無駄だから
鯖が決まってないならそんなに悩む必要はないと思う。
836nobodyさん:2012/02/05(日) 09:32:04.84 ID:5hDTMn6/
404 Blog Not Found:そろそろPHPに関して一言いっとくか
http://blog.livedoor.jp/dankogai/archives/50835571.html
837nobodyさん:2012/02/05(日) 10:13:56.63 ID:???
ずいぶん古い記事をひっぱってきたな。
個人的にはRuby(っていうかRails)もPHPも両方触って気に入ったほう使えばいいと思うよ。
先のことを考えると両方触っといて損はないと思うし。
838nobodyさん:2012/02/05(日) 10:27:25.69 ID:???
今からPHPはないだろ…
839nobodyさん:2012/02/05(日) 10:34:13.56 ID:???
言語の一つや二つ覚えるのに時間の無駄とかないから。
気になる部分は全部検討するぐらいのフットワークの軽さが必要だと思うよ。
840nobodyさん:2012/02/05(日) 10:51:12.27 ID:???
今までC, C++, Java, Perl, VB, Prolog, (PHP,) Rubyと触ってきたけどPHPだけは性に合わなかった
使えるけど使いたくない
841nobodyさん:2012/02/05(日) 11:01:19.14 ID:???
PHPはうんこだと思うけど一応触った上でうんこと蔑むのが最低限の礼儀だと思う。

ただ頭数の揃えやすさやとりあえずの速さでいくとそう悪い言語じゃなくなっちゃうんだよな・・・
842nobodyさん:2012/02/05(日) 11:10:38.58 ID:83n8dgCi
Pipelineのファイルをサーバーから直接返すのってどうやるん?
画像1個読み込むのにもRails呼ばれるのは重すぎやん
843nobodyさん:2012/02/05(日) 11:38:38.62 ID:???
Webサーバ側でそのように設定する。
nginxとかApacheとかで
844nobodyさん:2012/02/05(日) 11:46:16.72 ID:83n8dgCi
>>843
プリコンパイルすると

hoge.***********.js
とかになるやないですか?

でも、生成されるソースでは
application.css
とか
hoge_image.**********.png
になってるので

サーバーから呼んでも勿論存在しないと言われるのでRailsに一度投げるしか無い
って感じです

方法としては、ソースコード生成時に<img src="hoge_image.png">を<img src="hoge_image.************.png">
って手打ちする方法が一つ

そもそも、digestを付けないようにプリコンパイルするが一つ

だと思うのですがどっちも上手くいかんです

congig.assets.digest = false
にしてもtrueにしても効果ないし

きちんとimage_tagから画像呼んでもdigestが付加されないでござった
どうしようもないので、Assets以下をPublicに移動したら「そこにCss置くなks」って起動すらしてくれない



845nobodyさん:2012/02/05(日) 11:47:13.32 ID:83n8dgCi
>でも、生成されるソースでは
>application.css
>とか
>hoge_image.png
>になってるので


でござった
846nobodyさん:2012/02/05(日) 12:03:52.32 ID:83n8dgCi
なんか調べると、image_tagを使うと自動で後ろの-************:がくっつくらしいですね
image_tag使っても表示されないのはなぜなんでしょ……

そんな設定とかあります?
847nobodyさん:2012/02/05(日) 12:15:39.78 ID:83n8dgCi
すんません自己解決です

Railsを途中で3.1→3.2にしたのが原因のようです
新しいの作ってフレームワーク部分以外移動したら全部動きました
連レスごめんなさい
848825:2012/02/05(日) 14:14:38.14 ID:???
>>826 >>827
ありがとうございます
なんかindexって名前に違和感をおぼえて
849nobodyさん:2012/02/05(日) 18:42:15.47 ID:yrFQBJuz
HelloControllerとかプロダクションコードに入ってたりする案件だってあるぐらいだ。
IndexControllerだったらだいぶマシ。
850nobodyさん:2012/02/05(日) 22:06:59.42 ID:???
rails sで起動したサーバ時々固まらない?
サーバの画面でenter押せば進むんだけどなんでだろう。
851nobodyさん:2012/02/05(日) 23:41:33.56 ID:???
あるな
852nobodyさん:2012/02/06(月) 00:56:50.86 ID:???
ないけど
853nobodyさん:2012/02/06(月) 01:02:33.33 ID:???
むしろrails sは遅すぎて使ってない
apache再起動の方が10倍くらい早い
おれだけ?
854nobodyさん:2012/02/06(月) 12:39:14.01 ID:6CAJ3kKy
質問させてください。
Winで開発していたアプリを
本番環境を想定した仮想CentOS上で動かそうとしたんですけど
winでは動いていたものが、CentOS上だと

ActionView::Template::Error (invalid byte sequence in UTF-8):

というエラーをはいて動かなくなってしまいました。
エラー箇所はapp/views/layouts/application.html.erbの
<%= stylesheet_link_tag 'application', :media => 'all' %>
<%= javascript_include_tag "application" %>
なんですけど、この二行をコメントアウトすると、表示は崩れますが動きます。
文字コードが何かおかしいのかとも思い
app/assets/stylesheets
app/assets/javascripts
内も調べたんですが、これといっておかしなところも見つかりませんでした。
仮想CentOS上で適当に作ったアプリは普通に動くんですけど
これってどのような原因が考えられるのでしょうか?
環境はruby1.9.3、rails3.2.1です。
855nobodyさん:2012/02/06(月) 13:50:54.28 ID:tyxpRyp2
>>854
書いてある通り
CSSやJSがUTF8になってない
856854:2012/02/06(月) 14:02:57.33 ID:???
>>855
app/assets/stylesheets
app/assets/javascripts
内のファイルを全部エディタで開いてみる限りUTF8(BOM無し)のようですし
ディレクトリ内を試しに全削除しても同様のエラーが出てしまいます。
それとも、もっと違ったところが間違っているのでしょうか?
857nobodyさん:2012/02/06(月) 15:33:07.95 ID:???
>>854
ちなみにコメントアウトしたとき、表示が崩れてるっていうのは、文字化けしてるの?
858nobodyさん:2012/02/06(月) 15:50:12.13 ID:???
ディレクトリ消してもダメってことは無いわ。再起動してないだけだな。
もしくは precompileしたのが残ってる。
859854:2012/02/06(月) 16:14:40.89 ID:???
>>857
いいえ、スタイルが適用されてないだけです。
860854:2012/02/06(月) 16:41:25.32 ID:???
>>858
おっしゃるとおり、precompileしたものはしていて消しててなかったです。
public/assets
.sass-cache
などそれっぽいものを削除して再起動してみたのですが同じエラーが
precompileは上記以外にも消すものってありますか?
861nobodyさん:2012/02/06(月) 17:27:45.73 ID:???
ぜんぜん違うとおもうけど、stylesheet_link_tagの次のスペースって普通の半角?
862nobodyさん:2012/02/06(月) 17:41:08.00 ID:???
>>861
はい、そこらへんは確認しました。

あと、さきほどprecompileのヒントをいただいたので
試しにrake assets:precompile --traceしてみたら

** Execute assets:precompile:primary
rake aborted!
invalid byte sequence in UTF-8
/usr/local/rvm/gems/ruby-1.9.3-p0/gems/hike-1.2.1/lib/hike/index.rb:80:in `block in entries'
/usr/local/rvm/gems/ruby-1.9.3-p0/gems/hike-1.2.1/lib/hike/index.rb:80:in `reject'
/usr/local/rvm/gems/ruby-1.9.3-p0/gems/hike-1.2.1/lib/hike/index.rb:80:in `entries'

みたいに出ました。
hike/index.rb:80を見てみたんですが自分の能力では、どうしてなのかちょっとわからなかったです。
863nobodyさん:2012/02/06(月) 18:07:42.98 ID:???
routes.rbで

resources :samples

によって定義されたルートたちを
"admin/samples"のようなURLに一括して置き換える方法ってありますか?
できれば元のルートも無効にしたいのですが。
864863:2012/02/06(月) 18:13:46.83 ID:???
自己解決しました。

resources :samples, :path => "admin/samples"

と変更することでうまく行きました。
865nobodyさん:2012/02/06(月) 20:15:58.58 ID:FI1AngH7
>>862
>hike-1.2.1/lib/hike/index.rb

ブロックの中で例外になってて、ブロックの中身は
entry.to_s =~ /^¥.|~$|^¥#.*¥#$/

entryはPathname.new(path)の中にある個々のファイルの名前文字列。
正規表現のほうはスクリプトエンコーディングになってるはず。

ファイル名のエンコーディングって面倒くさそうだな。
とりあえずブロックの中にいるときにentryのエンコーディングやバイト列を
検分してみたらどうか。
866nobodyさん:2012/02/06(月) 21:42:42.42 ID:???
>>865
ありがとうございます。

@entries[key] ||= Pathname.new(path).entries.reject { |entry|
p entry.to_s
entry.to_s =~ /^\.|~$|^\#.*\#$/
}.sort

にしたら
"images"
"mark.png"
"h1.png"
"favicon.ico"
"blank.png"
"ico.ico"
"\x83R\x83s\x81[ \x81` h2.png"

と出力されて一番下の名前文字列でエラーが出ているようです。
なんでこんな変な文字が入り込んでいるのか。。

ちなみに>>854のも
<%= stylesheet_link_tag %>
にするとエラーが出ず
<%= stylesheet_link_tag 'foo' %> #fooは存在しないファイル名
とするとinvalid byte sequence in UTF-8が出ます。
ファイル名を呼び出そうとすると何故かエラーになります。
867nobodyさん:2012/02/06(月) 22:02:32.25 ID:FI1AngH7
>>866

"¥x83R¥x83s¥x81[ ¥x81` h2.png".force_encoding('Shift_JIS').encode('UTF-8')
=> "コピー 〜 h2.png"

これってどう対応するベッキー?
868854:2012/02/06(月) 22:46:51.46 ID:???
>>867
あわぁぁ、そうだったのかー!
そんなファイルを作ったのすっかり忘れていました。。
ありがとうございます。
"コピー 〜 h2.png"を消すとweb表示もprecompileもうまくいきました。

それにしてもstylesheet_link_tagやjavascript_include_tagで画像まで読み込んでいるんですね。
app/assets/stylesheets
app/assets/javascripts
はさんざん検証したんですが、
app/assets/images
は全くのノーマークでした。

でも2日間悩んでいたものが皆さんのおかげで動くようになりました。
本当にありがとうございました。
869nobodyさん:2012/02/06(月) 22:47:53.84 ID:???
なんだ日本語ファイル名か。
アップロードしたものなら、日本語入らないようにする、もしくはアップロード後UTF8にする。
そうでないなら普通にファイル名をUTF8にする。
870nobodyさん:2012/02/06(月) 23:25:29.54 ID:FI1AngH7
なんとなくforce_encoding使っちゃったけど、 encode('UTF-8', 'Shift_JIS') でよかった。
871nobodyさん:2012/02/07(火) 01:31:33.28 ID:???
>>853
まちがいない
872nobodyさん:2012/02/07(火) 07:50:38.92 ID:???
developmentモードが遅いのは当たり前。
apache再起動という全然違うものと比べてるのもおかしい話。

あとは単に自分のマシンが遅いんじゃないのかな。
あとWindows使ってるとか。rubyが1.8系とか。


873nobodyさん:2012/02/07(火) 07:51:21.34 ID:???
871=853
874nobodyさん:2012/02/07(火) 17:21:53.23 ID:T0i5g/PH
コントローラーのアクションの中でページキャッシュの設定って出来ません?

編集が完了したらロックかけて、ページキャッシュにしたいのだけど
どうやってすればいいのか……
875nobodyさん:2012/02/07(火) 20:51:41.88 ID:???

Twitter Bootstrapが大幅バージョンアップ!して凄まじいことに・・・ | IDEA*IDEA
http://www.ideaxidea.com/archives/2012/02/twitter_bootstrap_v2.html

https://github.com/seyhunak/twitter-bootstrap-rails
gem 'twitter-bootstrap-rails'

https://github.com/twitter/bootstrap/

876nobodyさん:2012/02/08(水) 06:55:10.76 ID:???
みなさん、OSとIDEは何を使ってますか?

ubuntuとgmateで満足してたんですけど、Windowsならvimかaptanaですか?
877nobodyさん:2012/02/08(水) 07:45:14.37 ID:???
Ubuntu+gmateで良いのでは。
好みでgmateをvimかemacsに変える程度で。

自分の見た範囲だとRailsやってる会社はMacが多かった。
事務方以外は全員Macとかザラ。
フリーランスの人とかはほぼ全員Mac。
たまにLinux。

Windowsでもどうせ仮装マシンにLinux入れて、ターミナル繋いで使うし。

878nobodyさん:2012/02/08(水) 08:06:30.84 ID:???
VMでLinux入れてSambaで繋いで、MacVimで編集してる
879nobodyさん:2012/02/08(水) 09:44:42.41 ID:???
レスありがとうございますた

ZENBOOKが欲しくなっちゃってきいてみたのです
Mac+textMate人気ですよね
MBAにしようか悩む
880nobodyさん:2012/02/08(水) 12:12:49.63 ID:???
>>878
なんかいろいろ妙だなそれは…。
本番と同じにするという意味でVMにLinuxまでは分かるとして、単にターミナルで繋げばええやん。

TextMateは2.0待った方が良いのでは。
日本語出せても変なので。
881nobodyさん:2012/02/08(水) 12:25:39.46 ID:v8bninox
Rails3.2使ってるけど
RUby1.9にしたほうが早くなる?
882nobodyさん:2012/02/08(水) 13:29:20.80 ID:???
>>880
878じゃないけど
sambaじゃないとtextMateつかえないからじゃないか?
883nobodyさん:2012/02/08(水) 15:26:37.24 ID:???
>>880
878だけど
ターミナルから動かすviよりMacVimの方が色々と楽なので
Linux使ってる理由はご明察
884nobodyさん:2012/02/08(水) 18:45:18.40 ID:???
Rails3のテストの説明でおすすめあれば教えてください
885nobodyさん:2012/02/08(水) 21:11:23.84 ID:5Y0ckqbl
production環境でサーバを起動して
ブラウザでページを見るとログに

cache: [GET /] miss
cache: [GET /ルート] miss

みたいに出るのですが、これはキャッシュ関係の設定に
何か問題とかがあるのでしょうか?
886nobodyさん:2012/02/08(水) 22:33:39.50 ID:???
初歩的な質問ですみません。
rake db:fixtures:load FIXTURES=hoge
でhoge.csvを読み込ませたいのだけれど、No such file or directory - /test/fixtur
es/hoge.yml
ってなります。ファイルは配置してあるんですが、ymlファイルを探してるようで、csvを読んでくれません。
どうしたらcsvを読んでくれますか?
ruby 1.9.3 rails 3.2.1です。
887nobodyさん:2012/02/08(水) 22:38:34.82 ID:???
ググったら3.2からcsvは使えないみたい
どうしても使いたかったらデータベースからインポートするのが早いとおもう
888nobodyさん:2012/02/08(水) 22:52:31.30 ID:???
>>887
ありがとうございます!
なるほど、それはcsv読んでくれませんね!
お手数かけました。
889nobodyさん:2012/02/09(木) 09:44:07.71 ID:???
>>885
何使ってるか知らないけど、画像ファイルが見つかってない。image_tag に空文字列渡したりするとそうなる。
890nobodyさん:2012/02/09(木) 09:51:25.59 ID:???
>>884
3だからと言ってそんなに変わらない。
あちこちにまとめ的な記事あるし、基本は「rspec 写経」でググって出てくるのをそのままやる。
891nobodyさん:2012/02/09(木) 11:00:16.66 ID:???
Ruby on Railsのパフォーマンス向上に関する10のtips
http://blog.tkmr.org/tatsuya/show/268-ruby-on-rails-10-tips
findメソッドはパワフルだけど基本SELECT * FROMなので場合によっては:selectで必要なカラムだけ読み込む、また:limitや:offsetを活用する

ごくごく基本的な Ruby on Rails のパフォーマンスチューニング
http://jijixi.azito.com/cgi-bin/diary/index.rb?date=20071114
:conditions オプションでキーに使われるようなカラムにはインデックスを作成すべし

:selectで取得するカラムを絞ったらパフォーマンスが倍に
http://brass.to/blog/active_record_select_option.html
レコード件数は110万件くらい
カラム数は30程度
インデックスは効いている(explainで確認済み)

Rails で MySQL を使うときの注意点 | METAREAL
http://www.metareal.org/2007/07/24/notes-on-rubyonrails-with-mysql/
SQL を二段階に分けるといい
まず、最初の SQL でレコードの ID だけを SELECT する(int だけなので、このときの一時テーブルはメモリ上に作られる)
次に、その ID で必要な TEXT や BLOB を SELECT するんだ(これは ID による単純な検索なので一時テーブルは使われない)

MySQLパフォーマンスチューニングのためのインデックスの基礎知識
http://d.hatena.ne.jp/kiyo560808/20101117/1289952549

これを知っておかないと、MySQLサーバの再起動でDBデータの不整合が発生するかもしれません! - よかろうもん!
http://d.hatena.ne.jp/interu/20100817/1282041840
892nobodyさん:2012/02/09(木) 11:01:32.22 ID:???
[Rails] query-reviewerでRailsアプリのボトルネックを見つける
http://d.hatena.ne.jp/tkng/20080811/1218442298

SpecialWarningというプラグイン
http://d.hatena.ne.jp/authorNari/20090205/1233840189

N+1問題などを監視してパフォーマンスを改善するRailsプラグインBullet
http://blog.digital-squad.net/article/149685338.html

複合キー
compositekeys ActiveRecord Composite Primary Keys
http://compositekeys.rubyforge.org/

Martin Fowler's Bliki in Japanese - エンタープライズRails
http://capsctrl.que.jp/kdmsnr/wiki/bliki/?EnterpriseRails

MOONGIFT: ? Railsを見える化「RailRoad」:オープンソースを毎日紹介
http://www.moongift.jp/2007/07/railroad/

Unexpected Run: Rails3.0でモデルのER図を簡単に出力する方法
http://sawada0903.blogspot.com/2010/10/rails30er.html

「has_many :through の関連テーブル名には、relation_ の接頭辞を用いる」
http://d.hatena.ne.jp/hichiriki/20100622#1277195810
893nobodyさん:2012/02/09(木) 11:54:06.77 ID:???

英国政府、新ポータルGov.ukをクラウド、アジャイル、Rubyで開発。ソースはGithubで公開 − Publickey
http://www.publickey1.jp/blog/12/govukrubygithub.html

https://github.com/alphagov/

https://www.gov.uk/
894nobodyさん:2012/02/09(木) 13:23:36.79 ID:???
アメリカに行ってエンジニアリングを学びたい中学生 - Togetter
http://togetter.com/li/254340
895884:2012/02/09(木) 15:46:45.01 ID:???
>>890
ありがとうございます
このスレでも何度かrspecって出てきてますね
標準のやつより良いんでしょうか
試してみます
896nobodyさん:2012/02/09(木) 18:41:05.78 ID:???
良い。特に理由がなければrspecを使ったほうがいい。
897nobodyさん:2012/02/09(木) 18:53:25.76 ID:???
898nobodyさん:2012/02/10(金) 15:50:30.54 ID:???
あるテーブルが不要になった場合、どのような操作を行えば良いのでしょうか?
単純にcreateのマイグレーションファイルを削除してrake db:resetとかで良いんでしょうか?
899nobodyさん:2012/02/10(金) 16:47:44.94 ID:???
他のテーブルのデータも要らないんであれば、それでいいんじゃない?
900nobodyさん:2012/02/10(金) 21:15:56.80 ID:7+rOXV6+
>>898
def self.up
drop_table :hogehoge
end
ってマイグレーションを作る
901nobodyさん:2012/02/10(金) 21:20:36.67 ID:tpz3bLVT
>>900

最近だとup/downはインスタンスメソッドになってる。

downで空テーブルを作成して過去のマイグレーションまで戻れるようにするか
IrreversibleMigrationを投げて戻れないようにするといいんじゃないですかね。

902nobodyさん:2012/02/10(金) 23:19:25.62 ID:Kq6N05B2
サイトがめちゃくちゃ重いのだけど
どうすれば早くなります?

RubyがCPU100%になってるので、DB周りでは無いと思うのですが
フレームワーク部分を高速化する方法ありませんか?
903nobodyさん:2012/02/10(金) 23:24:37.69 ID:???
CPUをいいものに替えたら?
904nobodyさん:2012/02/10(金) 23:26:29.38 ID:Kq6N05B2
>>903
確かにそれはそうなんですが
お金が……

サクラの4GBプラン使ってるのでもうしばらくは大丈夫だと思うのですが……
サイトはユーザー数2300人、同時接続が多い時で600人程度のSNSです
905nobodyさん:2012/02/11(土) 01:34:10.27 ID:???
実装だなそれは。
もしくはページの内容。
あとテーブルにインデックス張ってないとか。
他にはセッションをDBにしてたりとか。
906nobodyさん:2012/02/11(土) 02:19:50.84 ID:???
htmlソースを見たら、
railsで作ってる場合は
assets/jquery.js
って出てきて恥ずかしいったら
ありゃしないw
907nobodyさん:2012/02/11(土) 07:09:52.27 ID:???
>>904
CPUってだけじゃどうしようもない
テストで時間がかかってる処理を見つけるとか
書き込みなのか読み込みなのかくらい分からないと対処できないのでは
908nobodyさん:2012/02/11(土) 10:43:35.38 ID:???
さいきんの Rails サービスを高速化をしてみた - coリ・ー・ン<2nd life
SQL に適切にインデックス張ってない
キャッシュすべき場所をキャッシュしていない
無駄なデータを引きすぎてる
http://d.hatena.ne.jp/secondlife/20110919/1316438465
909nobodyさん:2012/02/11(土) 10:49:44.48 ID:94FnLoOG
>>905
インデックスは貼ってます
セッションはクッキーです
多分ページの内容か実装ですね

>>907
時間がかかるのは書き込み<<<<読み込みです
というのもSNSなので読み込まれる量が書き込まれる量の何十倍にもなるので……


>>908
それは既に読んでみたのですが
あまり具体性が無かったので
データは必要なものだけひっぱってますし、Find_by_sqlも行なっています
変更が緩やかなものはキャッシュしてsweeperかけてます
910nobodyさん:2012/02/11(土) 13:15:56.55 ID:???
Ruby on Rails を高速化する
N+1 クエリー問題を解消する
http://www.ibm.com/developerworks/jp/opensource/library/os-railsn1/

現実の世界の Rails、第 3 回: ActiveRecord を最適化する
一般的なパフォーマンスの問題を解決する
http://www.ibm.com/developerworks/jp/web/library/wa-rails3/

eager loadingって何? - おもしろWEBサービス開発日記
http://d.hatena.ne.jp/willnet/20090303/1236093728
911nobodyさん:2012/02/11(土) 13:22:20.40 ID:???
N+1問題は、ORMの典型的なパフォーマンス問題
http://dev.ariel-networks.com/articles/workshop/rails-activerecord/

[Rails] query-reviewerでRailsアプリのボトルネックを見つける
http://d.hatena.ne.jp/tkng/20080811/1218442298

SpecialWarningというプラグイン
http://d.hatena.ne.jp/authorNari/20090205/1233840189

N+1問題などを監視してパフォーマンスを改善するRailsプラグインBullet
http://blog.digital-squad.net/article/149685338.html
912nobodyさん:2012/02/11(土) 14:26:30.53 ID:???

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 による単純な検索なので一時テーブルは使われない)
913nobodyさん:2012/02/11(土) 20:08:10.98 ID:???
既出だったらゴメンなさいなのですが、Java/RubyでのWeb開発の
生産性の違いってどのくらいあるのでしょうか?

お手軽なものを作るなら、コーディング量が少なくて住むRoR、
パフォーマンスや、セキュリティ要件が厳しい場合は、Spring等が
一般的なのでしょうか??#言語によるパフォーマンスはあまり
気にしなくてもよい、とかの記事も見かけます

開発要員の集めやすさ等は考慮外として、それなりのスキルレベルを
持った人だけで作成した場合の生産性についてを知りたいと思っています。
(ある程度、規模が大きい場合は、あまり変わらない?)
914nobodyさん:2012/02/11(土) 20:16:34.45 ID:94FnLoOG
>>913
RoRだと個人で超短期間でサイト作ったという話はよく聞くけど
Javaだとそんな話聞かない

生産性の一点で見ればやっぱRoRの方が格段に高いのではないかな
915nobodyさん:2012/02/11(土) 20:26:51.18 ID:???
>>914
確かに個人で作ったものだと、Javaはあまり聞かないですよね。
最初の土台作りや、URLとコントローラのMappingを書かなくて良いのは楽だと思います。
#Seaserでも結構楽には書けますけど。

自分にはよく分かっていないのですが、RubyはJavaに比べて柔軟性が高いと思いますが、
これはRoRの生産性の高さにも貢献しているところはあったりするのでしょうか?
#Seaserには真似できないような、便利な書き方が出来るとか
916nobodyさん:2012/02/11(土) 20:31:42.97 ID:???
Making Twitter 10000 Percent Faster | High Scalability

Over 350,000 users. The actual numbers are as always, very super super top secret.
600 requests per second.
Average 200-300 connections per second. Spiking to 800 connections per second.
MySQL handled 2,400 requests per second.
180 Rails instances. Uses Mongrel as the "web" server.
1 MySQL Server (one big 8 core box) and 1 slave. Slave is read only for statistics and reporting.

http://highscalability.com/scaling-twitter-making-twitter-10000-percent-faster
917nobodyさん:2012/02/11(土) 21:19:00.88 ID:94FnLoOG
>>915
よく言われるのが「どんなプログラミング言語でも個人が1年に書ける行数は変わらない」
つまり、「1行で沢山のことを出来る言語の方が生産性が高い」

という言葉ですが、やる気とかの問題で一つの処理に長文を書かないといけないJava等と比べると
一気にがーっと書ける量とかそういう点でも生産性が変わってきそうですね

やる気のスパンが1時間だとすると
15分小休憩をはさむと前やっていたことを思い出して、ソースコードを読みなおしてーという手間がありますが
Railsのように15分単位で1セクションを書ききれると休憩後にすぐ次に行けて効率がよくなると思います

言語自体の柔軟性とかはJavaのフレームワークは使った事無いのでわかりませんが……
918nobodyさん:2012/02/11(土) 21:36:31.93 ID:???
>>917
その気持はよく分かります^^
Javaはとにかく、コーディング量が多くて大変です。
一つのことを実現するのに、数行かかったりすると、気分が滅入ってしまう
こともよくあります。

Javaも将来的に高階関数が入るのでだいぶ楽になるとは思いますが、
現時点では、RubyやScala、Haskellなんかと比べるとやっぱり辛いですね。
#誰が書いても同じ記述になる、と言う点ではJavaは便利なのですが
#1開発者として見ると、この辺はやっぱり辛いな〜と思います
919nobodyさん:2012/02/11(土) 22:23:32.96 ID:94FnLoOG
>>918
Railsはコピペでなんとなく動かせるってのも強いですね
コード数が少ないのでどこで何をしているのかが分かりやすく
ちょっといじるだけで色々かわりますし

Javaだと一箇所いじったら変数キャストして例外処理から書きなおしてーみたいな感じだった気がします
あんまり覚えてないのですが

と、色々な理由から生産性は高い気がします
920nobodyさん:2012/02/11(土) 22:27:28.56 ID:???
なんか会話っぽい独り言みたいなのが書き込まれてるけど、コピペはRailsのDRYにそもそも反してるだろ
921nobodyさん:2012/02/11(土) 23:26:58.02 ID:???
わろた
922nobodyさん:2012/02/12(日) 01:40:49.74 ID:???
has_and_belongs_to_manyで多対多の関連を作ったときに、
関連先に特定のIDが含まれているレコードのみを絞り込むにはどうやって書けばいいんでしょうか?
923nobodyさん:2012/02/12(日) 02:34:44.88 ID:1sMAjxn+
habtmまだあるんだな…

whereの条件でidを指定する際に 関連テーブル名.xxx_id のような名前を使う。
924nobodyさん:2012/02/12(日) 09:34:59.96 ID:???
>>922
hbtmは結構前から非推奨。ここ4年くらい書いてる人を見たことない。
代わりに has_many :through を使う。
925nobodyさん:2012/02/12(日) 09:45:16.96 ID:???
>>924
横やりだけど、非奨励の理由があったら教えて
アジャイル本の4版にも載ってたから、ちょうどこれから使おうと思ってたんだけど
926nobodyさん:2012/02/12(日) 10:06:50.73 ID:???
別に非推奨という訳ではないんじゃないかな。
ほとんど使われてないだけで。
公式のドキュメントにも「レガシーなテーブルに対応する時や、中間テーブルに直接アクセスしないならどうぞ」とあるし。

確かにどっかでhabtm使うの良くないからやめようぜっていう記事は見たことあるが。
927nobodyさん:2012/02/12(日) 10:17:40.35 ID:???
habtm非推奨は2007年くらいから言われてる気がする。
ギリギリな感じで生き残ってきたような…
懐かしき、くまくまーにもそれらしい記事が載ってるし。
928nobodyさん:2012/02/12(日) 11:42:42.77 ID:???
おしえてください。

コントローラーを作成する時、対応するモデルがある場合は、
rails gerate controller [モデル複複数形]
と書くと思うのですが、
対応するモデルがない場合は単数形になるのでしょうか?

929nobodyさん:2012/02/12(日) 14:27:09.49 ID:1sMAjxn+
お好きにどうぞ。
複数形にしておくと resources で決まるルーティングと合致するってだけだから、
モデルがないなら無関係。

930nobodyさん:2012/02/12(日) 16:44:11.30 ID:???
>>914
いつの話だ。
GrailsもPlay Frameworkもある今はそんなことはない。

>>917-918
これもいつの話だ
Groovyやscalaがあるからそれはない。むしろ既存資産を
Rubyライクなスクリプト言語感覚で使える分Railsより早いな。
931nobodyさん:2012/02/12(日) 16:48:46.22 ID:???
>>930
Playはいいね
でも国内とかで実績というか大きな例ってある?
932nobodyさん:2012/02/12(日) 17:37:02.40 ID:???
Playは最初良さげに見えたから使ってみたらダメだったという話は聞く。
まだ早いんでないかしら。
デモ見ると確かに良さげなのだが。
Grailsも使ってる大きなとこ知らんし。
933nobodyさん:2012/02/12(日) 18:57:34.11 ID:???
Railsにインスパイアされたフレームワークはあくまでエッセンスを取り入れてる
に過ぎないんだよな

最近のRailsは基本的な考え方はそのままにかなりのスピードで進化しているし、
他のフレームワークはそのスピードについて来れていない

まぁ、そのスピード感についていけない開発者も文句を言うきらいもあるが
934nobodyさん:2012/02/12(日) 22:37:39.70 ID:6rSX5KYj
本当はrailsの話ではないんだろうけどちょっとクイズと思って答えていただければ…

とあるシステムがA社向けとB社向けに卸されている
2つのシステムはRailsで作られていてほぼ同一のもの、viewだけがカスタマイズで大きく異なっている
ソースコードはgitで管理されている

システムにバグが見つかったので片方に修正を複数箇所の修正をかけた
さてこれで修正点をもう片方に反映する最適な方法は?
一番馬鹿な方法はgit logして修正したファイルの一覧を見つけて
全部上書きなんだろうけど
2社じゃなくて5社10社分で同じ状況の時を考えてみてもらえると嬉しいです
935nobodyさん:2012/02/12(日) 22:59:43.14 ID:1sMAjxn+
git format-patch / am あたりじゃないの?
936nobodyさん:2012/02/12(日) 23:01:37.29 ID:???
A社とB社でブランチきってないわけ?
どういう管理してるんだかわからんがバージョン管理してるのに手動で上書きって・・・・
937nobodyさん:2012/02/13(月) 02:29:34.02 ID:???
git rebaseって超便利じゃね? - Seasons.NET
http://d.hatena.ne.jp/Seasons/20090329/1238351273
938nobodyさん:2012/02/13(月) 13:04:18.98 ID:???
ミニブログの 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
939nobodyさん:2012/02/13(月) 13:10:38.06 ID:???
Scaling Twitter ? SlideShare
http://www.slideshare.net/Blaine/scaling-twitter
940nobodyさん:2012/02/13(月) 13:20:27.55 ID:???
941nobodyさん:2012/02/13(月) 13:25:21.95 ID:???
octopus
Database Sharding for ActiveRecord
https://github.com/tchandy/octopus

User.where(:name => "Thiago").limit(3).using(:slave_one)

Octopus.using(:slave_two) do
User.create(:name => "Mike")
end
942nobodyさん:2012/02/13(月) 15:23:56.28 ID:JBva2IDx
rails初心者ですが質問させてください

ruby1.9.2
rails3.1.3

アップロードされたが画像の表示をリサイズしてからやりたいのですが、
画像をデータベースにbinary型のデータとしてアップロードしているので
public配下のフォルダに保存するpaperclip等は使えません

現状の画像の表示は send_dataで画像のみを表示するshow_photo というアクション作って
色々なページから<%= image_tag photo_show_photo_path(@photo) %> の様な形で埋め込んでいます

ググるとrmagickを使う例が出てきますが、 img = Magick::ImageList.new("test.jpg") の様にファイル名を引数として
指定しているため、どうデータベースのデータを指定すればいいのかが分かりません

またimage_sizeを使う例でも http://blog.matake.jp/archives/rails_image_size.htmlの ファイル名を引数にとっているので、
どの様にデータベースのbinary型のデータを読み込めば良いかわかりません

上の二つを応用したいのですが、どなたかデータベースからデータをとって来て処理する方法を教えていただけないでしょうか?
よろしくお願いします
943nobodyさん:2012/02/13(月) 20:25:35.83 ID:+j7LBGVZ
944nobodyさん:2012/02/13(月) 21:03:10.66 ID:???
>>223

ちょっと遅レスだけど、レスありがとう。
結論から言うと、config/initializers はrails g modelの時によみこまれないのか、
うまくいかなかった。

https://github.com/technoweenie/attachment_fu/issues/41

どうも外人もattachment_fu.rb直接いじってるぽい。
いいんか・・・
945nobodyさん:2012/02/13(月) 22:28:24.43 ID:r3WlVMK6
すみません、どなたか助けてください

ログインユーザが admin のときだけ管理メニューをナビゲーションにだしたくて、
application.html.erb を以下のようにかいています。

<li><a href="http:">Contact</a></li>
<%= show_admin_menu_if_admin %>
</ul>

ここで、show_admin_menu_if_admin は application_helper.rb で以下のように定義してます。

def show_admin_menu_if_admin
if session[:user_id]
if User.find(session[:user_id]).name == "admin"
'<li><a href="/users">Users</a></li>'
end
end

ところが、これを実行すると以下のように < や = が < や &eq に展開されてしまい、
HTMLとして解釈してもらえません

<li><a href="/users">Users</a></li>

erb のなかからクオートされない HTML を生成するにはどうしたらいいでしょうか。
946nobodyさん:2012/02/13(月) 22:34:06.22 ID:+j7LBGVZ
string.html_safe! とか <%= raw ... %> とか。
tagヘルパーも使おうな。


947nobodyさん:2012/02/14(火) 06:05:21.88 ID:???
>>942
githubに保存にDBを使えるPaperclipがある。forkされてるから。
本家だけじゃなくて、forkされてるものも探すと良いよ。
948nobodyさん:2012/02/14(火) 06:09:01.08 ID:???
raw 書きたくなかったら
<%== >
も使える。
949nobodyさん:2012/02/14(火) 06:12:48.73 ID:???
>>945
認証に何使ってるか知らないけど
if current_user.admin?
みたいにしたら良いのに
950nobodyさん:2012/02/14(火) 13:48:09.28 ID:vL4j2NEB
>>943
ありがとうございました
無事表示できました!!
951nobodyさん:2012/02/14(火) 23:16:14.43 ID:???
945です、皆さなどうもありがとうぎざいました。raw で表示できました
952nobodyさん:2012/02/14(火) 23:18:40.87 ID:???
>>949
ご指摘ありがとうございます
user.rb に admin? を追加すればいいでしょうか
953nobodyさん:2012/02/15(水) 13:41:11.96 ID:NemRvMc3
ボタンの2度押し防止をしたいと思っています。
button_toに"disable_with"という引数を与えれば、ボタンを押した後にグレーアウトし、押せなくなります。
しかし、押せなくなるのは押したボタンだけで、画面上の他のボタンは押せるのです。
その画面はデータを更新する画面ではなく、データの表示、そしてボタンにより別画面への遷移を行うだけの画面です。
なのでform_forは使えないのです。

どうにか、どれか一個のボタンを押したら、画面上全てのボタンをDisableにすることはできないでしょうか?
ご存知の方がおられましたら、よろしくお願いいたします。
954nobodyさん:2012/02/15(水) 13:44:35.77 ID:???
>>953
railsじゃなくてjavascript
955nobodyさん:2012/02/15(水) 14:26:44.14 ID:RCBLEB3T
>>953
Railsだけでやりたいなら

form_tag "/" , :remote => true do

ほげほげ

submit_tag "オッケー" , :disable_with => "ロック" , :onClick => "return false;"

これで出来ると思うけど、スマートじゃないしおとなしくJS使うべき
956nobodyさん:2012/02/15(水) 16:24:52.48 ID:???
957nobodyさん:2012/02/15(水) 18:23:07.04 ID:???
【ウェブアプリケーションという不幸 】

現在、多くのプログラマ(素人)がウェブアプリケーションというものがベストな正しい方向だと勘違いしている。
ソフトウェアの作るにおいてそのアプリケーションに応じた状態遷移を実装するというのは基本中の基本である。
その点においてウエブブラウザというある状態遷移が実装されているアプリケーションの上に
また別のアプリケーションを実装するのは論外である。
そこまでするなら普通にアプリケーションを実装してダウンロードして使ってもらえばいいのである。
ウェブアプリケーションとは虚構にしか他ならない。
ウェブアプリケーションを作ろうとしているあなた。
今すぐ普通のアプリケーションとし設計し始めてはいかがだろう。
そうすればきっと後悔しないですむ。

HTMLやHTTPを悪者にはしていない。
TCP/IPができあがり、その応用として、ファイルを送ったりするようになった。
ファイルの中身のテキストにデータ構造をもたせ、それはつまりツリー構造なわけだが
その実装としてのハイパーテキスト、つまりHTMLという送る側と送られる側で決め事(プロトコル)
をつくり、画像や音楽など表現の幅を広げることは当然の成り行きだっただろう。
そして、その送る側としてのHTMLファイルサーバ、つまりWebサーバ、送られる側としてのプロトコルの解釈・表示系としての
ブラウザというアプリケーション。
ここまではいい。
だが、そこから先が素人の発想というか、いそがばまわれを忘れた者の愚かな発想。
つまりブラウザ上で、アプリケーションを動かすという発想なのである。
ブラウザというのは、おくられてきたステートレスな通信内容の一瞬の表示手段でしかない。
つまりアプリケーションのためのひとつのパーツなのである。
Windowsでいえば、コントロールのひとつ。(実際WebBrowserというコントロールがある。)
JavaならWebClietnだ(これは、ブラウザではないが。)。
包含関係が逆なのである。
ブラウザ上にアプリケーションを作るのは愚かなブームである。
958nobodyさん:2012/02/15(水) 18:27:47.97 ID:???
>>957
そうだな、それと同じくしてOS上にアプリケーションを作るのも愚かなブームだ。
959nobodyさん:2012/02/15(水) 18:45:47.81 ID:???
何でもかんでもHTTPの上でってのは気持ち悪いなとは思うわ。
960nobodyさん:2012/02/15(水) 23:46:35.01 ID:???
HTTPがお手軽で実装事例も多いんだからしょうがない
CORBA/IIOPとか考えたくもないだろ?w
961nobodyさん:2012/02/16(木) 03:21:35.33 ID:gUT9ymRS
質問させてください

2ちゃんの様な掲示板を作る時に スレッドのレス一覧の下に書き込みフォームを作るにはどうしたらいいのでしょうか?
scaffoldではnewアクションで空のオブジェクトを作らないといけませんが、
レスするかどうかはわからないのに、レス一覧顔面を見るたびに空のオブジェクトを作るのはもちろんナンセンスですよね?
962nobodyさん:2012/02/16(木) 03:41:59.23 ID:???
963nobodyさん:2012/02/16(木) 07:15:32.07 ID:???
twitterのような大量アクセスサイトでもフレームワークのformクラスは使ってたのかな。
964nobodyさん:2012/02/16(木) 09:05:15.33 ID:???
indexではモデルに関連しないform_tagにしといて、new.htmlに飛ばしてそこでモデルと結びつけるとかは?
思いつきだけど
965nobodyさん:2012/02/16(木) 09:07:41.24 ID:EHmdvyte
indexページからいきなりpostしてもいいのよ。
966nobodyさん:2012/02/16(木) 10:22:54.95 ID:???
別に空のオブジェクト作ってもいいじゃないかと思うけど
967nobodyさん:2012/02/16(木) 11:45:27.27 ID:???
twitter等で一覧を出すコスト >>>>>>>>>>>>> 空オブジェクト作るコスト
968nobodyさん:2012/02/16(木) 11:51:31.84 ID:gUT9ymRS
色んな方々、アドバイスありがとうございます
確かに普通にhtmlでフォームを作ればできる感じはしますね
あと空のオブジェクトを作る方法でもできる気はします(多分)

でも自分の勉強がメインなので、の空のオブジェクトを作らない かつ ビューヘルパーを使ってやりたいなぁ、と思うので
form_tag等を使う方法で挑戦してみようかと思います
969nobodyさん:2012/02/16(木) 12:40:37.09 ID:gUT9ymRS
連投ですみません

結局目的のform_tagを使ってcreateアクションにpostして掲示板のレスを作ることには成功しました
ただ<%= form_tag({:controller => 'posts',:action=> 'create'}) do %> の様に指定したら
routing error(no route)が返って来てしまいました

結果的には強引な感じはしますが、urlヘルパーを使って<%= form_tag(topic_posts_path(@topic),:method => 'post') do %>
の様に指定したらうまく書き込みができました ネストされたルーティングを使っているため上の様になりました

{:controller => 'posts',:action=> 'create'}の様なコントローラとアクションの指定では、なぜうまく行かないのでしょうか?
rake routes するとちゃんと以下のようにはなっています
POST /topics/:topic_id/posts(.:format) {:action=>"create", :controller=>"posts"}
970nobodyさん:2012/02/16(木) 13:29:38.29 ID:???
:topic_id => @topic.id を入れてないから。
どこで覚えたか知らないが、もうその書き方古い。Rails 1系の時はそれしか無かったけど。

form_for @post do |f|

でいける。@postをきちんと作ってれば。
971nobodyさん:2012/02/16(木) 13:47:21.30 ID:???
>>969
ID付きって事は更新用、scaffoldでいうところのupdateでしょ
create相当のことやるんならIDなしroute

というかscaffoldから始めたら?
972nobodyさん:2012/02/16(木) 14:47:58.94 ID:???
scaffold 作って、index と new を合体させればおk
で済む話では?
973nobodyさん:2012/02/16(木) 17:10:38.51 ID:xHJ9ppvJ
質問お願いします。
今回Railsで初めてアプリを作っていて、ほぼ完成したので
初めてproduction環境でサーバを起動して動かしてみたのですが、
ログに以下のように表示されます。

cache: [GET /] miss
cache: [GET /assets/application.css] miss, store
cache: [GET /assets/img1.png] stale, invalid, store
cache: [GET /assets/img2.png] stale, valid, store
...

これは、どこかに何か問題があるのでしょうか?
そしてmiss, stale, invalid, store はそれぞれ何を意味をしているのでしょうか?
辞書などでstaleを調べると「新鮮でない」とかですけど、ファイルによって
stale, invalid
stale, valid
だったりして、何が良くて何がダメなのかいまいちわかりません。

Rails3.2.1でアセットをプリコンパイルして
production.rbの設定は以下のようにしています。
config.serve_static_assets = true
config.assets.compress = true
config.assets.compile = true
config.assets.digest = false
974nobodyさん:2012/02/16(木) 18:14:17.54 ID:???
production.rb の設定変えてるんだから、自分のやってる事は分かると思うけど。
975nobodyさん:2012/02/16(木) 21:22:21.58 ID:???
>>974
デフォルトではエラーがでたので検索で調べたら設定があることを知って
今のところ、弄ってなんとか動く設定にしただけという感じです。
production環境での正常なログとは、本来どんな感じなのでしょうか?
976nobodyさん:2012/02/16(木) 21:56:18.65 ID:???
どなたかお助けください

2つのモデル(テーブル)
wokerとphoneがあります(両方scaffoldで作成)

workerモデルには has_one: phone
phoneモデルには belongs_to: woker
accepts_nested_attributes_for : woker

のようにしアソシエーションおよびネストを組んであります。
もちろんphoneモデルにはwoker_idのカラムがあり、telという電話番号(tel)のstringカラムもあります。

そこでview/woker/edit.html.erb
にアソシエートしたphone.tel を表示して、そこからテーブルをまたいでphoneの関連レコードも一緒に更新しようとしています。
その際に下記のようにfields_forを使うと、アソシエート先のカラムの表示(中身のデータも)はきちんとされます。
しかし、更新ボタンを押してもアソシエート先のphone.telへ変更が反映されません。一体なぜでしょうか?

<%= form_for @worker, :url => { :action => "create" } do |worker_form| %>
<%= worker_form.text_field :name %>
<%= fields_for @worker.phone do |phone_form| %>
<%= phone_form.text_field :tel %>
<% end %>
<% end %>
977nobodyさん:2012/02/16(木) 22:21:31.19 ID:DriUyt2H
978nobodyさん:2012/02/16(木) 22:52:33.55 ID:???
>>976
まず設計がそもそも悪い。
なんでworker has_one phoneなの?
一つ以上持ってたら?
普通は workerのカラムに phoneをいくつか持たせると思う。

それは置いといて、問題の件は
nested_attributes_for と fields_for の使い方間違ってる(nested_attributes_for 付けるモデルと、fields_for の引数)。
ちゃんと調べ直した方が良い。
979nobodyさん:2012/02/16(木) 22:59:50.92 ID:???
>>978
返信ありがとうございます。
Railsの書籍を3つほど持っているのですが残念ながら、
フォームで関連モデル先のカラム内容までを更新する方法が記載されていません。

試行錯誤しながらネットで調べていたところ、ネストを使えば良いみたいなことが書いてあったので、
お試し的にwork has one phoneという形でテストしているところです。

書籍に載っていなかったことを実現したいので
何をキーワードに調べたら良いものか分からずにいます。

知識不足ですみません。
980nobodyさん
>>976のfields_forを修正しました

<%= form_for @worker, :url => { :action => "create" } do |worker_form| %>
<%= worker_form.text_field :name %>
<%= fields_for @worker_form.phone do |phone_form| %>
<%= phone_form.text_field :tel %>
<% end %>
<% end %>