【Ruby】Ruby on Rails Part8 at PHP
[2ch|▼Menu]
[前50を表示]
650:nobodyさん
10/01/05 10:57:18 DXl89df8

イノベーションのジレンマ - Wikipedia
Wikipedia項目リンク

ディスラプティブ技術 - Wikipedia
Wikipedia項目リンク

スタートアップの始め方
URLリンク(www.aoky.net)
テクノロジーの世界では、常にローエンドがハイエンドを食っている。
安価な製品をより強力にするほうが、強力な製品を安くするよりも簡単なのだ。
だから安価でシンプルというところから始めた製品は徐々に強力なものへと成長していき、水が部屋に満ちるように、
「ハイエンド」の製品を天井の方へと押し込めることになる。
Sunはこれをメインフレームに対して行い、IntelはSunに対して行っている。

651:nobodyさん
10/01/05 14:54:37 s5/1mF78


Twitter創始者が語るWeb 2.0の要諦 ― @IT
URLリンク(www.atmarkit.co.jp)
Railsを使って2週間でプロトタイプが完成
ウィリアム氏がOdeo内で始めた小さなプロジェクトが「Twitter」だ。
Ruby on Railsを使って2週間で最初の動くバージョンを作り上げたという。


Twitterをはじめると2週間でブログの更新が止まる理由 そしてはじまる(かもしれない)総表現社会 - mizchi log
URLリンク(d.hatena.ne.jp)



652:nobodyさん
10/01/05 22:42:48
>>647
transactionの使い方はそんな感じでいいと思う。
do..endのなかでsave!とかupdate_attributes!ね。AR::RecordNotSaved系の
例外が飛んで、transctionがrollbackする。

ただ、検索したり保存したりは >>638 の書いているコードのほうがキレイなので
それを参考にした方がいい。

コメント件数は>>644のいうとおり、counter_cacheを使うと同じようなことを
ARが勝手にやってくれるので、プロダクションコードではそちらを使う方がいいと思う。

あと >>649
> また高速性を考えるならrailsを使う意味がない、生産性重視ならcomment_countカラムはいらん

んなこたない。
counter_cacheなり、それの自作なりを使わないでソートするためには、
Rubyでゴリゴリ書くか、相関サブクエリ使うことになると思うんだけど、
前者はさすがに遅い/無駄だし、後者は面倒なだけだと思うんだけどどうか。

653:nobodyさん
10/01/06 03:03:28
>>652
コメントカウント出すサブクエリなんてなんて1分もあれば書けるだろ
面倒なのかな?

654:nobodyさん
10/01/06 12:25:42 3+83O9QS
Rails 3 in Action
URLリンク(www.manning.com)
Yehuda Katz
MEAP Release: 2009
Softbound print: April 2010 (est.) | pages
ISBN: 9781935182276

1. Building Your First Rails 3.0 Application
2. Overview of the Rails stack(s) + architecture
3. Creating Rails Applications
4. Using DataMapper for Models
5. Using ActiveRecord for Models
6. Other Choices for Models
7. Processing Requests
8. Routing in Rails 3
9. Customizing Views
10. Working on the Client Side
11. Supporting Characters
12. Using the Plugin API
13. Testing Your Applications
14. Deploying a Rails Application
15. Scaling Rails

Appendix A Just enough advanced Ruby
Appendix B The migration story
Appendix C Rails 2 to Rails 3
Appendix D Merb 1 to Rails 3

655:nobodyさん
10/01/06 16:39:08 3+83O9QS
URLリンク(www.engineyard.com)

656:nobodyさん
10/01/06 16:45:50 3+83O9QS
Rails 3 beta eyed for late January release
URLリンク(www.computerworld.com)

657:nobodyさん
10/01/07 09:51:46 acpOW5s0
David Heinemeier Hansson
Bibliography
URLリンク(www.amazon.com)


658:nobodyさん
10/01/08 02:25:13
SQLite3で排他制御する場合どうすればいいですか?

SQLite3にはSELECT FOR UPDATEはないので
find(:lock => true)は使えないですよね。

トランザクションを
BEGIN IMEDIATE TRANSACTION
で開始すればいいのじゃないかと思うんですが
どこに書いたらいいものか分かりません。

659:nobodyさん
10/01/09 14:09:25 C3iGMVdd
SELECT FOR UPDATE なんて使わないから、使える

660:nobodyさん
10/01/09 18:20:07 eVooFF5+

Phusion Passenger 2.2.9 released
URLリンク(blog.phusion.nl)
Fixed compatibility with Rails 3.


661:nobodyさん
10/01/10 02:02:57
>>659
すいません。
だれ(なに)が使わないので
だれ(なに)が使えるのでしょうか?



662:nobodyさん
10/01/10 12:04:22 shGxwVTU
URLリンク(intertwingly.net)

663:nobodyさん
10/01/10 12:10:39 shGxwVTU

URLリンク(intertwingly.net)

664:nobodyさん
10/01/10 21:44:08
>>659
小学生でもわかる日本語でおねがいします

665:nobodyさん
10/01/11 11:52:44
馬鹿にはrorは無理。

666:nobodyさん
10/01/11 17:01:28
config/environment.rb にいろんな設定書くけど、
独自に設定を追加してもいいんでしょうか。
Rails::Initializer.run do |config|
 config.my_value = 'foobar'
end
みたいな。
あと、それを追加したとして、読み出す方法を教えてください。

667:nobodyさん
10/01/11 19:32:25 yaZxWBJR
ActiveModel: Make Any Ruby Object Feel Like ActiveRecord
URLリンク(yehudakatz.com)

668:nobodyさん
10/01/11 20:46:07
>>666
config(Rails::Configuration)はRails本体の設定しか受け付けない。
定数使って
MY_CONFIG = { :foo => 'bar', :hoge => 'fuga' }
のようにするのが手っ取り早い。

ちなみにアプリの利用者が変更する必要がない設定は
config/environment.rbやconfig/enviroments/*.rbに書く。
利用者が変えられる設定ならconfig/initializers/*.rbに書く(2.0以降のみ)。

設定が大量になりそうならYAMLファイルで外に出してenvironment.rbなどから読み込むか、
configatronのようなプラグインを使うか。

669:nobodyさん
10/01/12 00:22:34
質問主ではないが、勉強になった。
ありがとん > 668


670:nobodyさん
10/01/12 03:14:39
ここでアホな質問してる人らって、わからんことあったらまずここに書いて
のんびりテレビでも見てんの?

671:nobodyさん
10/01/12 04:35:12
アホな質問続きだが
railsで使用しているpluginのバージョンを一括表示する方法ってない?
script/about みたいな感じで。

672:nobodyさん
10/01/12 04:46:22 609VTkN+


Rails and Merb Merge: Plugin API (Part 3 of 6) | Engine Yard Blog
URLリンク(www.engineyard.com)

673:nobodyさん
10/01/12 19:07:46
Paginateを使いたいのですが以下のエラーが出ます。
---
undefined method `total_pages' for #<Array:0x5bcc4d8>

Extracted source (around line #42):
42: <%= will_paginate @items %>
---

scaffoldで新しくひな形を作り、

environment.rb の一番下に require 'will_paginate'

index.html.erb の一番下に <%= will_paginate @items %>

pages_controller.rb に
def list
@items = Item.paginate :page => params[:page], :per_page => 10
end

これらを追加しただけなのですが、何が原因でしょうか。

674:nobodyさん
10/01/12 20:02:14
質問させてください。

テストサーバー(staging環境)用にproduction環境でRailsアプリを動かしているのですが、
エラーが出たときにサーバーにもぐっていちいちlog/production.logを見るのが面倒です。
また、サーバーのログイン権限が無い開発者にもローカルの開発サーバー(webrickやmongrelのdevelopment環境)のように
エラー内容を人目でわかるようにしたいのですが、そのようにエラーを表示する方法はないものでしょうか?

675:nobodyさん
10/01/12 20:27:20 4XZzyMEc
>>666
configatron
URLリンク(www.moongift.jp)

676:nobodyさん
10/01/12 22:54:24
>>673
なぜpages_controller.rb? その説明だけだと、items_controllerになりそうな感じだけど。

677:nobodyさん
10/01/12 22:57:41
>>671
これ使うとか。自分はまだ使ったことないけど。
URLリンク(github.com)

>>673
ヘルパーメソッドのwill_paginateに渡すのはArrayじゃなくて、
paginateの戻り値のWillPaginate::Collectionじゃないといけない。
なので、コントローラかビューのなかで@itemsをArrayにしちゃってないか確認してみて。

>>674
・Exception Logger:DBにエラーを保存してアプリ上で閲覧
・Exception Notifier:エラーをメールで送信
・Syslogに記録:URLリンク(blog.s21g.com)
・Clarity:ログ監視ウェブアプリ URLリンク(www.moongift.jp)

678:nobodyさん
10/01/14 21:03:02 MmCuc8fs

Do One Thing for Rails 3 on January 16th and 17th
URLリンク(railsbridge.org)

679:674
10/01/14 21:35:26
>>677
たくさんありがとうございます!

一番下の見ていて、webでログ監視すればいいのかって気づいて
tailコマンドのphp版設置してみました。部内LANサーバーなので問題ないです。
php1ファイルで設置らくちんw ちょっと不便ですが、致命的になるまではこれで試してみます。
jQueryとPHPでLinuxのtailコマンドを実装する - EC studio 技術ブログ
URLリンク(techblog.ecstudio.jp)

680:nobodyさん
10/01/15 16:09:17
MYSQLで以下のようなテーブルを使っています。
| id | name | email | check(boolean型) |

restful_authenticationプラグインのsignupでユーザーを新規登録した時、
"check"に自動的に0の値を入れたいのですがどのようにすれば良いでしょうか?

681:nobodyさん
10/01/15 17:33:21
スキーマ定義を触れるならMySQLのcreate tableのほうで、
checkカラムにデフォルト値0を設定しておけばいいと思う。
create/save時に未指定なら0が入る。
あとはbefore_saveとかafter_initializeとかのフック。


682:nobodyさん
10/01/16 04:57:42
>>680
はてなのタケルンバさんのblogで丁寧にまとめられていますよ

683:nobodyさん
10/01/16 20:30:35
基本的にJava屋で、今年からRailsをやってます。

find_by_sqlってのを見つけた瞬間、

find_by_sql("select col1, col2 from table")

って感じで使いまくってんだけど、これっていいのだろうか?
だっせー、かっこわりーって思われないだろうか?

684:nobodyさん
10/01/16 20:37:30
求めるタスクがこなせてるならいーんじゃない?


685:nobodyさん
10/01/16 21:25:58
>683
ダサい。
なんでリファレンスをちゃんと読まないんだ。自称Java屋のくせに。

686:nobodyさん
10/01/16 22:29:46
>>683
ほんとにその程度のSQLで使ってるのなら、
ださいとかじゃなくてありえない

687:nobodyさん
10/01/16 23:25:29
もう転職考えた方がいいレベル

688:nobodyさん
10/01/17 00:01:02
>>683
>find_by_sql("select col1, col2 from table")

あれ、Table.find() って col1, col2 の指定ってできたっけ?
できなかったと思うから、自分もfind_by_sqlよくつかうよ。



689:nobodyさん
10/01/17 00:04:41
外のカラムが不要な場合は Table.find(:all, :select => 'col1, col2')


690:nobodyさん
10/01/17 00:05:44
うおっ

× 外(ほか)
○ 他(ほか)


691:nobodyさん
10/01/17 03:56:17
タケルンバに失笑されるレベル
Javaフレームワークは使ったことないんだろか


692:nobodyさん
10/01/17 10:33:43
>>688
間違えた、find_by_sql()じゃなくてActiveRecord::Base.connection.select_rows(sql)だった。
group byやhavingが入るようなsqlだとこっちのほうが楽なんだけど、そんなことない?

693:nobodyさん
10/01/17 10:41:10
AR::Baseとして取り出す必要がないならそれも手ではある。


694:nobodyさん
10/01/17 11:30:47
パフォーマンス(笑)のためだったりするんだろうか。

695:nobodyさん
10/01/17 16:13:12 mYKzzqeT
683です。

なるほど、やっぱりダサいのか
ちなみに例に上げたのは簡単なやつだけど
実際に使ってるのは、サブクエリーが絡むような複雑なやつなんだけどね

>> 691
Hibernate使ってたけど、あまり好きじゃないね

>> 694
find_by_sqlの方が、パフォーマンスよくなるん?

696:nobodyさん
10/01/18 09:03:43 BApO165G

日本の富豪40人(2010年) - フォーブス長者番付・億万長者ランキング
URLリンク(memorva.jp)
田中良和 グリー創業者 IT 32 1.60 1456億円
笠原健治 ミクシィ創業者 IT 34 0.72 655億円

697:nobodyさん
10/01/19 13:32:36 aU7LUmun
passengerでrails動かしたいのですが、
DocumentRootにアクセスしてもdispatcher.fcgiのソースが表示されてしまいます。

これって正しくモジュールが読み込まれてないからなんでしょうか。
httpd.confにはLoadModuleもしてるしapacheのエラーは出てません。
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.9
PassengerRuby /usr/bin/ruby

どなたか原因解明の手がかりwご存知の方ご教授願います。

698:nobodyさん
10/01/19 23:30:34
.htaccessはどうなってる?

699:nobodyさん
10/01/20 16:17:25
railsを勉強しようと思うんですが、初心者向けで
お勧めの本はありますか?あるいは、これは読んで
おくべき本でも構いません。

700:nobodyさん
10/01/20 17:16:39
ちょっと古いかもしれないけど

かんたんRuby on RailsでWebアプリケーション開発
著者 arton さん
URLリンク(www.amazon.co.jp)

701:nobodyさん
10/01/20 17:53:46
>>699
ム板で回答しておいたのでそれを貼っときます。

Ruby 初心者スレッド Part 33
スレリンク(tech板:804番)

804 名前:デフォルトの名無しさん[sage] 投稿日:2010/01/20(水) 16:21:54
>>800
初心者が最低限これだけあればまずはなんとかなる!って書籍を3つ。
というか俺が実際にRails初心者レベルで仕事で使った本

・RailsによるアジャイルWebアプリケーション開発
URLリンク(www.amazon.co.jp)

・Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応
URLリンク(www.amazon.co.jp)

・Railsレシピブック 183の技
URLリンク(www.amazon.co.jp)

あとは、webサイトだけど公式のガイド。ちょっとしたわからんことはまずこれ見たら大体すむ
Ruby on Rails guides
URLリンク(guides.rubyonrails.org)

毎回聞かれてるんで、Railsスレテンプレに入れといていいと思うんだ・・・

702:nobodyさん
10/01/20 17:58:26
ついでに質問いいでしょうか?

script/serverで開発用のmongrelなどを立ち上げた場合は、
動的に読み込んでくれているためか大概は開発中にファイルの編集後でも
コードの反映はサーバーを立ち上げ直さずにブラウザのリロードで済みますよね?

こういうのをscript/consoleでする方法ってないもんでしょうか?
script/consoleの再起動はそんなに重くないとはいえ、何回もやってたらけっこう面倒です。
再度requireする?のがよいんでしょうか?

703:nobodyさん
10/01/20 17:58:49
>>699
最近、Head First Railsて本の翻訳が出てて、洋書を読んだ感じだとだいぶよかった。
Rails 2.3にも対応している唯一?の本なので、独特のテンションが嫌いじゃなきゃかなりオススメ。

704:nobodyさん
10/01/20 18:50:18
質問させてください。

コントローラーのbefore_filterのような感じで、レンダリング前にメソッドを実行するようなフィルタは定義できないものでしょうか?
layout/application.html.erb 内でコントローラーのメソッドを(ヘルパー化して)呼ぶしか無いでしょうか?

705:704
10/01/20 18:57:33
> layout/application.html.erb 内でコントローラーのメソッドを(ヘルパー化して)呼ぶしか無いでしょうか?
これダメでした。

ヘルパー内で @hoge = 1234 のようにしてもerbの方に反映されませんね…。
layout/application.html.erb の最初の行にロジックを直書きして対処しました。
何かいい方法ないもんですかね

706:nobodyさん
10/01/20 19:46:07
>>699
Head First Railsが今一番新しくて初心者向けの本、オススメ。
これでわからなかったらRailsは諦めて別なのをやった方がいい。

あと
RailsによるアジャイルWebアプリケーション開発の第三版がオススメ
第二版と初版は古いバージョンのRails用だから間違って買うと泣くはめになる。



707:nobodyさん
10/01/20 19:47:15
Rubyスレで質問して、Railスレ逝けと言われて来ました。

今回初めてRubyを仕事で扱うことになり、
RailsによるアジャイルWebアプリケーション開発のT部を読んで
Smarty使って、PHPで開発するのとそう変わらないなと思い、
本ちゃんプログラムの解析にかかったのですが・・・

・ controllers,models,viewsともにjsファイルばかり。
・ ブラウザでソースをみたら、ログイン画面なのに1万行近くソースがある。
・ 画面遷移しても、URLは変わらない。
・ サーバーとクライアントのソースがある?

等、ちょっと見かけたことのない構成でした。
こりゃわからんと思い、参考書の続きを読もうとしましたが、
そもそも参考書読んでわかる内容なのか疑問を持ちまして・・・

そこで、質問なのですが
1.上記のような構成はRailsでは一般的で初心者レベルの話
2.それなりに高度な技術で初心者が参考書を読んだ程度で
  太刀打ちできるレベルの内容ではない
3.製作者が変態。そんな作り聞いたことがない。まず見かけない。

いずれですか。
1なら参考書読んで調べます(キーになる単語を教えてくれると助かります)
2ならダメぽと上に報告します。
3なら・・・頑張ります。

以上、教えて下さい。。。

708:nobodyさん
10/01/20 19:49:37
あとRails始めるなら
RSpecも同時に調べておいた方がいい。
BDD、TDDなどの開発手法を要チェック。
cucumberも

709:nobodyさん
10/01/20 19:51:53
>>707
>>706

710:nobodyさん
10/01/20 19:58:41
>>707
たぶんほとんど全機能をAJAXで実装しているんじゃないかね。
Railsがその中でどう使われているかは質問だけでは分からないけど…


711:nobodyさん
10/01/20 20:38:09
>>710
ありがとうございます。
確かに、ブラウザの戻るボタンがグレーアウトしてる等
思い当たる節はあります。

AJAXを使用しまくっているという前提に立ってもう一度
解読してみます。

712:nobodyさん
10/01/20 22:19:08 Qj1mXafK
>>702
reload!

713:nobodyさん
10/01/21 00:05:32
>>704
レンダリング前ってつまりcontrollerのアクション内がそうだけど、
ビューのレンダリングのタイミングで処理したい理由は?

>>707
これだよね?
URLリンク(www.amazon.co.jp)

ソースコード↓を見ても、Ajaxなんて使ってないけど。
URLリンク(www.ohmsha.co.jp)

第1版しか読んでないけど、最初から全部Ajaxで作るみたいな珍妙な本ではないはず。

714:nobodyさん
10/01/21 00:14:02
>>713
本で学んだ後「本ちゃんのプログラム」にとりかかっている、と解釈した。


715:704
10/01/21 08:26:59
>>713
ありがとうございます。

layouts/application.html.erbのサイドバー内に
サイドバーなどにDBからクエリーしてきた最新の結果を常に表示したい、という感じです。

例えが難しいのですが、例えば睡眠時間を記録するサイトで
サイドバーに今日の睡眠時間、といったような数値を表示したいとします。
その場合、application_controllerにbefore_filterかまして
毎度呼ばれるのメソッド内にて今日の睡眠時間を取得する処理を書くと、
コントローラー内で処理をする前の数値を取得してしまいます。
コントローラー内で処理をした後の数値を表示したいのです(つまりできるだけレンダリング前に)。

なので、layouts/application.html.erbの先頭に、
今日の睡眠時間を取得する処理を書いちゃえ!ってことなんですが、
(できるだけモデル依存部はモデルに書くとしても)そういうロジックをviewに各のはどうなんだ、と思った次第です。

716:nobodyさん
10/01/21 08:32:44
>>707
適当に予想します。

jsばっかり=フロントエンドがAJAX(JavaScript)、バックエンド処理がRails
(それでもmodelsがjsばっかりはない気が?)
JS(AJAX)がクライアント処理、サーバーがRailsと見た。

RSSリーダーのOpen Fastladder(Livedoor ReaderのRails実装でソース公開されてるやつ)
みたいなのをイメージしたんだけど違うかな。
つまり、RailsでwebアプリのAPIをガリガリ書いて、JavaScriptでガワを作るような構造。

まずは、テストコードを読むことから始めたらどうかな?
ちゃんとしたアプリならテストがたくさん書かれているはずなので、
どんな感じにモデルを扱っているかとか仕組みがわかるはず。

717:nobodyさん
10/01/21 09:21:00
>>715
after_filterじゃいかんの?

718:nobodyさん
10/01/21 11:03:39
scaffoldした時のshowアクションの挙動を止めたいんですが、何か方法はありますか?

新しい独自のアクション(hoge)を追加したときに、コントローラ名/hogeというアドレスに
アクセスすると、showアクションでIDがhogeという風に動作してしまいます

route.rbにて:exceptや:onlyなどを用いてshowアクションを取り除くようにしてみましたが、いずれも駄目でした

719:nobodyさん
10/01/21 19:03:10
migrationの質問です。

DBのmigrationでself.downに元に戻す処理を書くと思うのですが、
カラムの追加や変更等簡単な処理は元に戻す処理は簡単にかけるのですが、
例えば、仕様変更であるキーの重複するレコードを削除するとか、その処理を元に戻す場合だと
処理が複雑で簡単には元に戻せなかったりしませんか?

そのような場合、self.downをどのように書いたものでしょうか?
self.upで変更するレコードを外部ファイルにまるごと(mysqldumpとかで)ダンプして、
self.downで戻すときはダンプしたのを(mysqlコマンドに)つっこむとかそういうったことしないといけないものなのでしょうか?

今は、整合性が取れなくならない場合(カラムとかをいじらないとか)で元に戻す処理が複雑な場合は、
self.downを書かなかったりしますが、どうしたものかなーと。

運用サーバーの方ではcapistranoでデプロイでdb:migrateをかけるときには
自動でmysqldumpするようにしかけてあるのでバックアップ自体は大丈夫なのですが・・・

720:nobodyさん
10/01/21 19:22:34
>>718
rake routesしてルーティングを確かめるんだ!!

721:707
10/01/21 22:01:06
>>716
>jsばっかり=フロントエンドがAJAX(JavaScript)、バックエンド処理がRails

そんな感じでした。
フロントエンドで、SproutCore(始めて知ったのですが)を使用してました。
サーバーがRailsで、作りとしては、
最初にガサっとサーバーからデータを取ってきて、
フロントエンドで加工して使いまわして、
必要なときだけサーバーとデータをやり取りする感じでした。

>(それでもmodelsがjsばっかりはない気が?)
クライアント側を見ていました。
SproutCoreの構成がRailsによく似てたので。。。
サーバー側では、ちゃんとrbファイルがありました。

また、ブラウザでソースみたら1万行近く云々と言っていたのは
どうも、SproutCoreはビルドできるらしく、1つに固められた
rhtmlファイルのソースを閲覧していたみたいです。

今、試しに元のソースをビルドしようとしたら、文法エラー
undefined local variable or method 'output'
でビルドに失敗したので、このソースは本当にビルドできるのか
先方に確認中です。

まさかとは思いますが、Windowsではビルドできない(Ruby1.8.6.111)
なんてことはないですよね。。。

また何か進展がありましたら、報告させて頂こうと思ってます。
ありがとうございました。

722:nobodyさん
10/01/22 01:43:39
>>715
いまのところ rails 標準にはないので、URLリンク(github.com) のようなのを使うしか。
before_renderで検索するとこれの他にもいくつか実装が見つかる。

>>718
map.resources :items, :collection => [:hoge]
などと書けば良いかと。
詳しくはこの辺で URLリンク(d.hatena.ne.jp)

723:nobodyさん
10/01/22 01:57:31
>>720
なるほど
showに関するmapが先に呼び込まれていて、そちらが優先されていることがわかりました
自作アクションに関してconnectを使い、これをshowよりも先に記述するとうまくいきました
ありがとうございました

724:nobodyさん
10/01/22 02:05:07
>>722
配列でアクションを指定するのですね
以前は以下のように指定していたのですが、これが原因だったみたいです
map.resources :items, :collection => {:hoge => :get}
これを先程のように配列指定にしたらすんなり解決しました
ありがとうございます

725:nobodyさん
10/01/23 05:44:49
>>721
> まさかとは思いますが、Windowsではビルドできない(Ruby1.8.6.111)

そういうことって普通にあるよ。Railsプロジェクトならなおさらじゃないかな。
Rails開発はWindows環境はマイナー環境だと思うのでちゅうい
そういうときは、coLinuxとかVMWare使う
あとはRuby 1.8.7に上げてみるとか。

726:704
10/01/23 05:49:49
>>715
ありがとうございます。

実はあの後、layouts/appliacation.html.erbの先頭に @hoge = hogehoge のように書くと
他のyieldするerbからは参照出きなくて困っておりました。

before_renderでgithub等あさってみます。すでにあるということは需要はある要望なんですねw

>>717
after_filterだと変数参照出きませんでした。レンダリング後によばれるのかな?うーんん。

727:nobodyさん
10/01/23 09:43:12
after_filterは、ページ全体をgzip圧縮するとか、携帯向けにShift_JIS+半角仮名
にするとかだねー。


728:nobodyさん
10/01/23 17:17:27
特定ページのログを出力しない方法ってないのかな?

ファイル管理のコントローラだけ、ページ表示するたびにいっぱいログが出るので、
ログを出さないようにしたいんだけど、情報無いのよね。。。
他のページはデフォルトのログ出力のままがいい。

コントローラでconfigのlogレベルをいじろうと思ったんだけど、
configなんてのは知らないって怒られちゃった。

動的にconfigいじるのは無理なのかな。
loggerのレベルはinfoでやってます。

あとは、ログレベルをwarnにして、必要なログを手で入れてくかだな。。。

729:nobodyさん
10/01/23 17:46:50
Rails.logger.level = Rails.logger.class.const_get(:FATAL)

3とか4とかベタに書いてもいいけど。



730:728
10/01/23 18:27:59
>>729
ありがとうございます。
configの動的変更できました。

ただ、途中までのログが出てしまいました。
ファイル管理のコントローラに以下追記。
before_filter :set_log_rebel_warn

Processing FilesController#show (for 127.0.0.1 at 2010-01-23 18:18:40) [GET]
・・・

このログを出してるところの前でクリアするか、
出そうとしてるログを消すようにしたらいけるかな。(出来るのか?)
もうチョイ調べてやってみます。

助かりましたー!!

731:nobodyさん
10/01/23 19:55:54
ActionController::Base#log_processing
ActionController::Base#log_processing_for_request_id
ActionController::Base#log_processing_for_parameters
あたりをFilesControllerでオーバーライドしてみるとか。



732:nobodyさん
10/01/23 20:02:09
>>707
707に同情するよ。Rails以上にSproutCoreでUIを書くのが大変だと思う。
多分テスト無いよね?なかったらそれこそ地獄だよ。

733:nobodyさん
10/01/23 20:43:41
<%= link_to 'show', :action => 'show', :id => user %>
<%= link_to 'destroy', :action => 'destroy', :id => user %>

destroy クリックしたら show のページに飛ばされる
画面上の URL が両方 /usr/id になっとるしわけ分からん/(^o^)\

734:nobodyさん
10/01/23 20:49:09
:method 指定したらできたよー

<%= link_to 'destroy', { :action => 'destroy', :id => user }, :method => 'delete' %>


735:nobodyさん
10/01/23 21:11:18
ブラウザがDELETEやPUTにまともに対応する日は来るのだろうか。


736:728
10/01/24 09:31:59
>>731
ActionController::Base#log_processing
をオーバライドでいけました。
ありがとうございます。助かりました。
いやしかし、rorはいいですなー。楽だー!!

737:nobodyさん
10/01/24 14:35:45
django も忘れないで~

738:nobodyさん
10/01/24 14:59:53
ど・・・Django

739:707
10/01/24 15:24:37
>>725
ご指摘ありがとうございます。
sroutcoreのバージョンを0.9.11に戻したらビルドできました。
が、ビルド後出来上がったrhtml,jsファイルが本番と別物の欠陥品でした。
ビルド環境が腐ってるのか、ソースが腐ってるのかわからない状態です。

作成者にVMWareで環境(Macらしいです)もらうことも考えてますが、
PHPでその部分だけ一から作り直すことになるかもしれないです。
もともと社内で使う生産管理システムで、あまりリッチなUIは必要なく
遅い、ブラウザが落ちる等評判もよくないみたいなので。。。

>>732
>707に同情するよ。Rails以上にSproutCoreでUIを書くのが大変だと思う。
ですね。
最初何が何やらわからなかったです。
ただ、大体当たりはついてて修正プログラムも作成はしてあります。
環境が構築できてないので確認は全く出来てませんけど。。。

>多分テスト無いよね?なかったらそれこそ地獄だよ。
テストはあるにはありますが、ユニットテストというよりは、
開発者が色々試した結果を置いてあるだけで、
後でソースを修正する人のためのではないかと。。。

ただ、ブラウザをプラットフォームにして、システム構築する手法に
触れたのは良かったです。
AJAXは、”サーバーとデータやり取りしても画面遷移しない技術”
程度の認識だったので新鮮でした。
将来主流になってくるかもしれないですね。

740:nobodyさん
10/01/24 17:36:00
RoR で↓これは使えますか?
URLリンク(www.smartclient.com)


741:nobodyさん
10/01/24 17:42:49
>>739
10年後くらいやね

742:nobodyさん
10/01/24 22:01:02
10年って、10年前がどんな状態だったか考えてのことか?

743:nobodyさん
10/01/25 13:29:59
>>739
すごいなぁ、社内向けのシステムでSproutCore使うとか、
作り手のオナニーか、見積金額上積みのためとしか思えん。
フルスタックのUIフレームワークなら、まだしもdojoの方がメジャーだと思うし。

それに社内のブラウザが全部ChromeかSafariでも無い限り、
まずパフォーマンスに問題が出るとおもう。

Ajaxというか、正しくはJavascriptUIだと思うんだけど、
そういうのは技術的にもう普通だと思う。
GMailやGoogleReaderは多くの人が使ってるだろうし、
GoogleWaveもぜんぶJavascriptでできてる。
ただ、どうしてもコストがかかるので、
低予算の案件が多いWeb制作業界では浸透しないんだと思う。


PHPで一から作り直すくらいなら、Railsだけで作り直してみたらどうでしょうか。
Viewの作成と、Controllerの手直しだけで動くようになる気がします。

744:nobodyさん
10/01/25 13:50:05
画面遷移ない方が低コストに出来ると思うけどなぁ

745:nobodyさん
10/01/25 14:33:18
>>700
>>701
>>703
>>706
レスありがとうございました。
Head Firstシリーズで始めようと思います。


746:nobodyさん
10/01/25 16:13:21
>>744
もしそうなら是非やり方を教えて欲しい。

デスクトップアプリみたいにFSMでGUIを作ろうとするとどうしてもテストが破綻する。
かといってテスト無しでGUIを作り込むと、あっという間にバグの温床になるし。

現状どうやってるのか、参考になるサイト・書籍などもあればお願いします。

747:nobodyさん
10/01/25 17:15:57
その辺が整備されて実用になるのが10年後っていう意味かな

748:nobodyさん
10/01/25 19:00:20
Dojoもそうだし、Extとか使うと、どうしてもJavascriptUI(というのか?)をメインにしないと、
Javascriptファイルの読み込み時間が長くて使えたもんじゃなかった。
だけど、Extメインにすると、Javascript側の記述がもりもりになって、
サーバ側のフレームワークがなんであってもほぼ関係なくなる、と思う。
Javaだろうが、Rubyだろうが、PHPだろうが。
Javascriptの技術(というか、使ってるJavascriptのライブラリの把握度)の方が重要になってくる。
俺はJavascriptってかなり難しい言語だと思ってて、人にはおすすめ出来ないので、
JavascriptUIは使わないようにしてる。
サーバ側の言語と、Javascript両方ともに熟知して貰わないといけないから。


749:nobodyさん
10/01/25 19:53:41 zfSMIsHp

How to easily use Rails 3 now ? tomafro.net

URLリンク(tomafro.net)

750:nobodyさん
10/01/26 06:56:48 ATL7yxma
>>703 とか >>706 も書いてたけど、最近出た Head First Rails って本が超読みやすくてわかりやすくてマジ感動した。
初心者は2ちゃんとか見てる暇あったらとりあえず全員これ買って読むがよいと思うんだ。


751:707
10/01/26 10:01:38
続報です。
製作者が元の環境を消してて環境再現ができない。
作り直しは受注元にダメと言われる、と完全にオワタ\(^o^)/
と思ってましたが、どうにかこうにかビルドできる環境を構築できました。
gemとsproutcoreのバージョンを変え、Javaインストールしてetc...

何とかなりそうです。
皆さん。色々とありがとうございました。

>>743
>作り手のオナニーか、見積金額上積みのためとしか思えん。
そうだと思います。金額でも揉めたみたいです。。。

>ただ、どうしてもコストがかかるので、
>低予算の案件が多いWeb制作業界では浸透しないんだと思う。
その点は同意ですが、JavascriptUIの使用者の本命は、
Web製作業界ではなくアプリ製作者だと思います。
ブラウザが今よりも安定・高速・多機能になり、クラウドが一般にも
普及したら、ブラウザ上でゲーム、アプリを作成するのが
主流になるんじゃないかなと。
その方が、ユーザーの負担が減り自由度があがりますし。。。

将来的にはアプリの起動は、OSからブラウザに移行する気がします。

752:nobodyさん
10/01/26 12:54:27
>>707 は6,7年くらい前からタイムスリップしてきたのかと小一時間w

753:nobodyさん
10/01/26 14:34:11
懲役7年

754:nobodyさん
10/01/27 01:12:32
rails(linux)でmssql使いたいんだけど

UnixODBC
FreeTDS
activerecord-odbc-adapter
Ruby ODBC

入れりゃいいの?


あとgemで見つけた
activerecord-sqlserver-adapter って何?

755:nobodyさん
10/01/27 01:43:58
そんな口の利き方のやつには絶対に教えない

756:nobodyさん
10/01/27 08:41:54
ブラウザが高機能になって安定高速に成った歴史なんて無いしな。
シンプルイズベストで、余計な機能そぎ落としたほうが高速安定すると思うよ。
もうJSとHTMLの拡張辞めればいいw みんなでHTML1.0に戻ろうw

ゲーム、アプリは普通にjavaで組むのが、グーグル携帯の先に有ると思うよ。
googleクラスのハカーでもchromeブラウザ上で全て実行させるなんて言い出してないし。

犬上で動くodbc-mssql driverが無いと思うw
jruby経由でjdbcでごにょごにょでもすれば? mssql捨てるのが一番だが。

757:nobodyさん
10/01/27 09:59:14
ここでいいのかどうかわからないのですが。

linodeでRailsを動かしている方いらっしゃいませんか。
どのプランで、どういう構成で、どのくらいパフォーマンスが出ているか
分かる範囲で教えていただけると助かります。

よろしくお願いします。

758:nobodyさん
10/01/27 11:42:12
>googleクラスのハカーでもchromeブラウザ上で全て実行させるなんて言い出してないし。

Chrome OS

759:nobodyさん
10/01/27 12:57:30 vbYrOD4B
URLリンク(intertwingly.net)

760:nobodyさん
10/01/27 21:35:32
html.erbでコメントを入れる場合、
<!-- コメント -->
<% # コメント %>
どっちでも一応コメントになりますが、どっちの方が正しいやり方でしょうか?

761:nobodyさん
10/01/27 21:52:40
そもそも<!-- -->で囲んでも、ERBの視点ではコメントではない。
ERBはHTML以外の中にも書けることを思い出そう。

<!-- <% RUBY %> --> と書くと RUBY はRubyコードとして評価される
ので、<%# %> にしたほうがよいと思う。

たとえば、
<!-- <% 1 + %> --> → Rubyコードが文法エラーになる。


762:nobodyさん
10/01/27 21:55:07
あ、↑Rubyコードをコメント化する場合の話しかしてないや。

出力HTMLソースの中にコメントとして現れて欲しい部分は<!-- -->の中に。
Ruby評価中に解釈したくないRubyコード片は <%# %> の中で。


763:760
10/01/27 22:03:08
ありがとうございます。
なるほど…どのレベルでコメントになるかっていう違いあるんですね。そこまで頭が回ってなかった。
基本的には<%# %>でほとんど済みそうですね。
HTMLに残さなきゃいけないコメント、、、そんな場面はあり得るのかな?

764:707
10/01/28 01:50:38
>>752
古いっすか?私の考えw
まあ、Webを何年もやってきた同僚の意見は違うし、
私の見当違いである可能性は高いですね。

でもそうなると、ブラウザ上でシステム構築するのは
主流にはならない気がします。
ユーザーが望んでいるのは、付加価値よりも
安く・簡単・便利に使えることだと思うので。

ちょうどWEBメールが普及したように、
WEB画面がリッチになることには金出さなくても
安く簡単にダウンロード出来て、設定する必要もなく
どのパソコンでも動くアプリなら性能落ちても金出すでしょう。

でも本当に難しいでしょうね。そんなブラウザ作るのは。。。

>>756
>ゲーム、アプリは普通にjavaで組むのが、グーグル携帯の先に有ると思うよ。
そうなるでしょうね。
実際、携帯でアプリ作成するのが増えてきてません?

でも、スペックがPCに比較して落ちるのと、
結局、これまでのPC同様、機種依存が出てくるので
個人的にはブラウザに頑張ってもらいたいのですが。。。

765:707
10/01/28 01:55:02
スレ違いの話題を長々とすいません。
もう止めときます。

ちなみに修正まだやっとります。
もうこのプログラムやだw

766:nobodyさん
10/01/28 02:06:38
HTML4.0以前、どれだけ苦労したか知らないバカがいるのか

767:nobodyさん
10/01/28 02:28:56
>>707が結局何を言いたいのかさっぱり分からん

768:nobodyさん
10/01/28 03:30:24
>・ ブラウザでソースをみたら、ログイン画面なのに1万行近くソースがある。

わろすw

ajaxもどきでもやってんだろうな
jQueryのソース全部貼り付けたとかじゃないかw

769:nobodyさん
10/01/28 15:24:22
>>768
おまえ>>707以降のレスを全く見てないだろ
ほかの影響を考えないで脊髄反射でプログラムを書き換えるタイプだな

770:nobodyさん
10/01/29 00:30:31 SeyjXxxZ

URLリンク(www.flickr.com)

771:707
10/01/29 04:03:11
>>769
ははは。まあまあ。

>>767
私が言いたいのは、宇宙開闢137億年の歴史に比べたら
納期を守れないやら、プログラムが読めないなどは
ほんの些細な問題だということです。






もうだめぽ。。。。

772:nobodyさん
10/01/29 16:59:48
ちょっと質問、Rails 2.3.5のプロジェクトなんですが、
国際化は特に考えないで作ってきたんですが、
プラグインが英語で国際化考えてない感じで手を加えたいんですが、
プラグインの国際化ってどうやるものなんでしょう?

i18nとかを使うんでしょうか?
この辺はどこらの資料を見ればいいですか?

今は英語の部分を日本語にべた書き換えでリリースでも別にいいんですが、
後で英語のプラグイン本家にパッチ送って反映してもらいたいときに、メッセージを国際化しときたいんです。

773:nobodyさん
10/01/29 18:57:57
そのプラグインの名前は?

774:nobodyさん
10/01/29 21:24:31
おれもそうオモタ

775:nobodyさん
10/01/29 22:55:58 azIwv80e
URLリンク(guides.rubyonrails.org)

776:nobodyさん
10/01/30 02:07:12
ちゃんとi18n実装してくれるなら助かるが、なんちゃって日本語実装だとみんなが不幸に成るだけ。
そういう中途半端な日本語対応パッチでみんな苦しんで来てるし。

PC用のUTFと携帯用のSJISとメール用のJISぐらいはまともに実装しないとねえ。

777:nobodyさん
10/01/30 02:15:30
自分でプラグイン作ればいいじゃん
そんな大変なことではないんだが

778:nobodyさん
10/01/30 02:20:08
railsのwebサーバをどうしようか悩んでる。
passengerが楽でいいんだけど
将来的に、ec2でスケールアウトさせることを考えると
apache(ngjinx/lighttpd)+mod_proxy_balancer+mongrel_cluster
とかの方がいいの?


779:nobodyさん
10/01/30 03:05:38
まずはそこまで支持されるサービスを作りなさい

780:nobodyさん
10/01/30 03:15:12
>>779
確かにそうなんだが
ec2に乗せるの前提で話がすすんでるんだ。

猛者はおらんかのぉ。wakame便利そうだけど、正式リリースまだだし。

781:nobodyさん
10/01/30 04:41:34
Rackの価値ゼロだな

782:nobodyさん
10/01/30 04:49:05
うちの会社はrails使うときはapache以外選択肢無いなぁ

783:nobodyさん
10/01/30 15:57:35
テーブルのフィールドの説明ってさ,
マイグレーションのファイルにかくべき?
モデルに書くべき?

784:nobodyさん
10/01/30 16:27:22
WordとかExcelとか
カラムの意味を調べるのに毎回ソース嫁とか言われたらたまらん

785:nobodyさん
10/01/30 17:00:44
せっかくのアジャイル思考フレームワークなのに
DB構造変わるたびに毎回Excel編集しろとか言われたらたまらんな

786:nobodyさん
10/01/30 17:35:17
編集するのは1人、閲覧するのはN人
どちらを優先すべきかは言うまでもない

それにそんなにコロコロ構造は変わらん
変わるのなら最初にちゃんと設計しないから
デスマでよくあるけどな

787:nobodyさん
10/01/30 17:59:45
>>786
> 編集するのは1人、閲覧するのはN人
え?え?

788:nobodyさん
10/01/30 18:56:53
>>783
まず、マイグレーションでもモデルでもいいがソース上に書いておくべきだと思う。
開発中はソースだけ見れば済むようにしたい。
ソースだけでは分かりづらいなら補足資料は必要だけども。

テーブル定義書は納品物として必要だけど、ドキュメント類は開発が終了してから提出するという事で顧客と事前に約束を取り付けておく。
開発が終了したら、CSEなどのツールで自動生成。そのファイルに日本語の説明を書いていく。
っていうのが自社のやり方。


789:nobodyさん
10/01/30 19:01:12
仕事のスタイル次第だね
うちは自社サービスだけだからドキュメント自体ほとんど存在しない。

790:772
10/01/30 19:17:19
>>775
公式ガイドみてます。
プラグインところも見ているんですが、
The Basics of Creating Rails Plugins
URLリンク(guides.rubyonrails.org)

本体だとconfig/lang/以下におけばいいわけですが、
プラグインの場合は、vendor/plugins/hoge/ 以下にconfi/lang/*.yml を配置すればOKなのかな。

>>776
??よくわからん

>>777
今はプラグインをそのまま修正して日本語化してます

791:nobodyさん
10/01/30 19:17:46
テストケースに書いておくのがBDDであり
RSpecやCucumberだろう

792:772
10/01/30 19:18:37
>>773
プラグインはこれです。
phronos's rails_datatables at master - GitHub
URLリンク(github.com)

793:nobodyさん
10/01/30 19:41:11
DataTablesってすごいねぇ。

phronos'sってどうゆう意味だろ?

794:nobodyさん
10/01/31 18:17:54
phronosさんの作ったrails_datatablesってこと。
GitHubのプロジェクトトップページのタイトルは、
<author>'s <project-name> at master - GitHub
となる。

795:nobodyさん
10/02/01 05:15:16
なお、masterは、あるgitリポジトリのデフォルトのブランチのこと。


796:nobodyさん
10/02/01 12:37:55
parents, childrenというテーブルがあったとして
parents...id, child1, child2というカラムを持っている。それぞれchildrenのidが入る
children...id, parents_idというカラムを持っている

このようなときに、ある時はchild1を、ある時はchild2をキーにして
has_manyでのテーブル結合を切り替えたいのですが、こういう方法は無理なんでしょうか

今は両方ともhas_manyでparentsに追加しているのですが、切り替えができたら嬉しい

797:nobodyさん
10/02/01 17:47:36 /Gi8FxAx
URLリンク(lingr.com)
スケールアウトからスケールアップへの回帰
URLリンク(japan.cnet.com)
URLリンク(www.slicehost.com)


コピペ運動会 URLリンク(copipe.cureblack.com)
700万PVのRails製サイトが月$60のVPS(メモリ1GB)で動かせるという話
URLリンク(togetter.com)
URLリンク(www.linode.com)


URLリンク(gladiators.jp)
オンラインRPGの運営をはじめて1ヶ月経った
環境としては、OSはUbuntuサーバ版なんですが、実はVMware上で動かしていて、ホストOSはWindows XP Professional
URLリンク(blog.pettan.jp)


798:nobodyさん
10/02/01 18:27:25
どこまで必死なんだよ
宣伝うぜぇ死ねよ

799:nobodyさん
10/02/01 18:40:58
>>796
parentsテーブルがchild1とchild2のIDを持っているということは、やりたいことは
parent.children1 や parent.children2 (Parent has_many Child)
ではなく
parent.child1 や parent.child2
であってる?

class Parent < ActiveRecord::Base
belongs_to :child1, :class_name => 'Child', :foreign_key => 'child1'
belongs_to :child2, :class_name => 'Child', :foreign_key => 'child2'
end
class Child < ActiveRecord::Base
has_one :parent
end

でいいと思ったんだけど、これじゃchild1とchild2のどっちで結合すればいいか
特定できないからchild側からはparent参照できないのか。
(has_one parent1とかすれば可だけど)

800:nobodyさん
10/02/01 23:11:35
>>798
実働報告なんてほぼ皆無なんだからこちらとしてはありがてーわ。

自治棒は消えろ

801:nobodyさん
10/02/02 14:14:08
>>799
:class_nameというのがあるんですね。なんとかできそうです
ありがとうございます

802:nobodyさん
10/02/02 20:25:53 tGNPNfj/
Rails 3 beta is almost ready for public testing. We're just hammering out the last bugs in Bundler. Stay tuned.
about 10 hours ago from Tweetie

dhh
URLリンク(twitter.com)


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5388日前に更新/279 KB
担当:undef