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

【RoR】Ruby on Rails Part12

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2011/07/19(火) 13:44:46.30ID:zxrusyvr
■前
【Ruby】Ruby on Rails Part11
http://hibari.2ch.net/test/read.cgi/php/1292032736/

■参考サイト
<英語>
本家:http://rubyonrails.org
API document:http://api.rubyonrails.com/
開発者のblog:http://weblog.rubyonrails.org/
参考wiki:http://wiki.rubyonrails.org/rails
http://ruby-toolbox.com/
http://rubygems.org/
http://agilewebdevelopment.com/plugins/top_rated

<日本語>
Rails' wiki: http://wiki.fdiary.net/rails/

http://twitter.com/dhh
http://www.loudthinking.com/
0051sage2011/07/22(金) 21:42:28.94ID:Uhqw0ffO
>>50
すいません
gem install mysql2 も実施していたのですが
結果は同じでした。
0052nobodyさん2011/07/22(金) 22:12:08.53ID:QEp81h1s
>>48
ホームディレクトリでgenerater起動してもエラーと使用法が出るだけよ。

>>49>>51
rails で雛形を作成する際に -d mysql を付けたなら
database.yml にも Gemfile にも mysql2 の指定があるはずだな……
あとは bundle 忘れ?

bundle show してみたときに mysql gem が出て来なければ
bundle install を実行。


0053sage2011/07/22(金) 22:44:40.04ID:Uhqw0ffO
>>52
ありがとうございます
bundle install しても mysql gem は出てこないようです
0054sage2011/07/22(金) 22:56:24.37ID:Uhqw0ffO
>>52
$ rails new Sample -d mysql
$ cd Sample
$ rails generate model member show

をしたら

Could not find gem 'mysql2 (~> 0.2.6)' in any of the gem sources listed in your Gemfile.

とのエラーが出ます。
Macって環境を作るだけでも本当に大変なんですね・・・・
0055sage2011/07/22(金) 23:01:09.66ID:Uhqw0ffO
>>52
gem listの中に mysql2 が入ってなかったので
sudo gem install mysql2 したときの結果がこれです。

MacBook-Pro:Sample mikeneko$ sudo gem install mysql2
Password:
Building native extensions. This could take a while...
ERROR: Error installing mysql2:
ERROR: Failed to build gem native extension.
/Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/bin/ruby extconf.rb
checking for rb_thread_blocking_region()... yes
checking for mysql.h... yes
checking for errmsg.h... yes
checking for mysqld_error.h... yes
creating Makefile
make
gcc -I. -I/Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/x86_64-darwin10 -I/Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby/backward
-I/Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1 -I. -DHAVE_RB_THREAD_BLOCKING_REGION -DHAVE_MYSQL_H -DHAVE_ERRMSG_H -DHAVE_MYSQLD_ERROR_H -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE
-I/usr/local/mysql/include -Os -g -fno-common -fno-strict-aliasing -arch i386 -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings
-Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long -fno-common -pipe -Wall -funroll-loops -o client.o -c client.c
In file included from /Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby.h:32,
from ./mysql2_ext.h:8,
from client.c:1:
/Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby/ruby.h:108: error: size of array ‘ruby_check_sizeof_long’ is negative
/Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby/ruby.h:112: error: size of array ‘ruby_check_sizeof_voidp’ is negative
0056sage2011/07/22(金) 23:01:24.96ID:Uhqw0ffO
続き

In file included from /Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby/intern.h:29,
from /Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby/ruby.h:1327,
from /Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby.h:32,
from ./mysql2_ext.h:8,
from client.c:1:
/Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/include/ruby-1.9.1/ruby/st.h:69: error: size of array ‘st_check_for_sizeof_st_index_t’ is negative
make: *** [client.o] Error 1
Gem files will remain installed in /Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/lib/ruby/gems/1.9.1/gems/mysql2-0.3.6 for inspection.
Results logged to /Users/mikeneko/.rvm/rubies/ruby-1.9.2-head/lib/ruby/gems/1.9.1/gems/mysql2-0.3.6/ext/mysql2/gem_make.out
0057nobodyさん2011/07/22(金) 23:49:46.76ID:QEp81h1s
1. rvm使ってるならmysql2 gemはホームディレクトリに入るべきなので、
sudoは付けないのが正しいのではなかろうか。

2. そのエラーはSIZEOF_LONGマクロとsizeof(long)の値が異なる時に出る。
ということは32ビットバイナリと64ビットバイナリをまぜこぜにしてるのかもしれない。
rubyはx86_64のようなので、

$ ARCHFLAGS="-arch x86_64" gem install mysql2

みたいなコマンドになりそう。


ちなみに sqlite3 の gem は何も考えずにインストール出来てる。
0058sage2011/07/23(土) 00:14:53.86ID:DljQLmyJ
>>57
ありがとうございます。もう諦めます。
MacOS10.6で環境を作るだけでもこんなに大変だと分かっただけでも収穫でした。
必要なモジュールやライブラリ関係が多すぎること
すべてコンパイルで入れなきゃいけないこと
いずれかのバージョンが少し違うだけでもNGなこと

海外も国内も MacOS10.6、rails3、ruby1.9、gem1.8.5、MySQLを組み合わせた
説明のあるサイトはほとんどありませんでした。
rails3とruby1.9自体がレアケースなんでしょうか
Linux素人の私には無理でしたorz

皆様ありがとうございました。
0059sage2011/07/23(土) 00:20:03.21ID:DljQLmyJ
最後に1つご質問させてください

ターミナルから コンパイルして いろいろとインストールしたのですが
これらが何だったのか?どこにインストールされているのか?
が分かりません。これらを削除して最初の状態に戻したいのですが
リスト一覧で表示したり、アンインストール方法するいい方法を知っていたら
教えていただけないでしょうか?
0060nobodyさん2011/07/23(土) 00:20:25.65ID:UfpWyc4E
http://b.hatena.ne.jp/t/rails.vim
0061nobodyさん2011/07/23(土) 00:22:15.06ID:UfpWyc4E
rails.vimが便利すぎる件 - (゚∀゚)o彡 sasata299's blog
http://blog.livedoor.jp/sasata299/archives/51075825.html
0062nobodyさん2011/07/23(土) 00:30:16.45ID:???
macってlinuxじゃないだろ
ruby1.9とrails3の組み合わせは普通だぞ
0063nobodyさん2011/07/23(土) 00:35:38.28ID:UfpWyc4E

Apache, MySQL, Ruby and Rails and required dependencies.
http://bitnami.org/stack/rubystack
http://bitnami.org/files/stacks/rubystack/2.2-2/bitnami-rubystack-2.2-2-osx-x86-installer.app.zip
0064nobodyさん2011/07/23(土) 00:42:25.58ID:???
こういう人間がいるから、「PHPはすぐデプロイできるから便利!」てうたい文句が
もてはやされるんだろうなぁ…
0065sage2011/07/23(土) 02:25:04.35ID:DljQLmyJ
素人で若輩者ですがお力お貸しください。

railsのプロジェクト作ったあとで
ブラウザからそこのコントローラとアクションにアクセスすると
Access denied for user 'root'@'localhost' (using password: YES)
と出ます。
database.yml に問題があると思い、下のようにしても結果は同じです。
どこに問題が考えられますか?


development:
adapter: mysql2
encoding: utf8
reconnect: false
database: db_development
pool: 5
username: root
password: hogepass
socket: /tmp/mysql.sock
0066nobodyさん2011/07/23(土) 03:35:43.27ID:???
MySQLのパスワードが違っている。
OSのアカウント管理とは独立してMySQLのアカウント管理があるので、
rootのpasswordはシステムのそれじゃなくてMySQL用に別途設定するのだけど、設定してある?

設定してないなら、
# mysqladmin -u root password (新しいパスワード)

設定しているなら、
$ mysql -u root -p -S /tmp/mysql.sock db_development
(パスワード入力)
してアクセスできるか試してみれ。

0067sage2011/07/23(土) 04:26:33.28ID:DljQLmyJ
>>66
ありがとうございます。
>>63さんの書いているruby stackでrailsに必要なものを一括で入れました。
インストール直後はMySQLサーバーも立ち上がっていてPhpMyAdminもつながるのですが
再起動後はMySQLサーバーが落ちています。

どうすれば再び立ち上げることが出来るのか分かりません >_<
0068sage2011/07/23(土) 04:49:07.91ID:DljQLmyJ
>>66
すいません>>67の件は自己解決しました

mysqladmin -u root password hogehoge としたところ
/Applications/rubystack/mysql/bin/mysqladmin.bin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: NO)'

となり、出来ませんでした
0069nobodyさん2011/07/23(土) 08:31:52.34ID:DVSib5H8
既にパスワードが付いているぽいので、
mysqladmin -u root password newpass
じゃなくて
mysqladmin -u root -p password newpass
では?

ぶっちゃけ初心者なら mysql より sqlite3 のほうが一億倍楽だと思うけど…
0070nobodyさん2011/07/23(土) 10:42:04.72ID:UfpWyc4E
Ruby on Rails 3.1 を Windows にインストールする手順をかなり丁寧に説明してみました - Rails 雑感 - Ruby on Rails with OIAX
http://www.oiax.jp/rails/zakkan/rails_3_1_installation_on_windows.html
0071nobodyさん2011/07/23(土) 13:47:42.06ID:???
>>58
Macだとしても
その組み合わせは普通過ぎるので、
誰も解説書かないと思う。
特に問題起こらないし。

誰かが以前に書いてたとして、バージョンちょっと違うだけで、また同じエントリ書こうと思わないでしょ。
0072nobodyさん2011/07/23(土) 14:12:10.79ID:???
>>67
自動起動設定が入ってないのか…。
そのアプリみたいなの知らないけど、どこかに書いてあればその方法で。

書いてなければ自分でmysql探してコマンドで立ち上げる。
Mac用に配布されてるなら、
自動起動の設定が何処かにありそうだけど。

正直インストールは楽かも知れないけど、
こういう全部入りはあまりオススメしない。
0073nobodyさん2011/07/23(土) 15:55:36.96ID:DVSib5H8
macportsのmysql5-serverは
$ sudo port load mysql5
でデーモンが自動起動する設定になる。
0074nobodyさん2011/07/23(土) 15:56:41.22ID:???
>>67
使ってて、うまくいってたと思って
mysqlの設定いじってたら
rails sを実行する時点でmysql2エラーが発生するようになった。
rubystackのディレクトリは独立してるからアンインストールと再度インストールで直ると思ってやったけど
やっぱり同じエラーが出る

最初の頃に自分でコンパイルして色々とインストールしようとした
エラー頻発したり dmgファイルでインストールしまくったりしたから
変な残骸か何かでシステムの中身が壊れてるのかな?

リセットした状態で普通にインストールできるような状態にならないでしょうか?
0075nobodyさん2011/07/23(土) 15:57:37.36ID:???
ちなみにMacOS10.6です
0076nobodyさん2011/07/23(土) 17:14:13.46ID:???
>>74
Gemfileに
gem 'mysql2', '< 0.3'
0077nobodyさん2011/07/23(土) 18:35:42.79ID:7CgsKONL
rails.vimが便利すぎる件 - (゚∀゚)o彡 sasata299's blog
http://blog.livedoor.jp/sasata299/archives/51075825.html

川o・-・)<2nd life - rails.vim まとめ
:R で controller と view の切り替えが可能です。コントローラの場合、カーソル現在位置のメソッドに対応する view に飛んでくれます。
http://d.hatena.ne.jp/secondlife/20061222/1166781841

ナレッジエース - Vimを使ったRuby On Rails開発環境の構築
通常コマンドプロンプトから実行するRailsコマンドを、Vimの中から実行できるようになります。
http://blog.blueblack.net/item_133

Windows版VimでRubyを快適に使う設定-AutoComplPopが便利すぎる!! | ぐるらん
http://gururan.com/20100807/021504

http://www.vim.org/scripts/script.php?script_id=1567

http://b.hatena.ne.jp/t/rails.vim
0078nobodyさん2011/07/23(土) 22:07:58.35ID:???
windowsに

rails2.1
ruby1.8
netbeans6.1

の環境を入れたいです。
なんか相互間のバージョンの違いとかで動かなかったり
インストールすら出来なかったりします。
rails2.1をnetbeans上で手早く扱えるようにするにはどうすればいいですか?

rubystackの場合、rubysrack内のコンソール上でしか動かず
netbeansの実行とかでは動くようになりませんもんね。
0079nobodyさん2011/07/23(土) 22:08:18.87ID:???
ちなみにxpです
0080nobodyさん2011/07/23(土) 22:45:57.32ID:???
>>78
WAMP入れて
cakephpフォルダ設置したら
間違いなくいきなり使えます!
とかとは違うよね。

railsの相互間の依存度は異常
どれか一つでもバージョン合わないとかで、しょっちゅう動かないし
今から参考ソース豊富な2.1したくても
gem install railsで最新が入って動かないし
gem install -v=2.1.0 rails ってしても
エラー出て入らなかったりする
0081nobodyさん2011/07/23(土) 23:07:49.61ID:???
>>80
そんな人のための bundler ですよ
0082nobodyさん2011/07/23(土) 23:18:07.81ID:???
>>81
bundle installしても、最近ダウンロードしたruby1.8とかに別途gem入れても相互間のバージョン合いませんって言われるし
入っても gem install -v=2.1.0 rails
がエラーで入らない
0083nobodyさん2011/07/23(土) 23:49:51.33ID:???
>>82
bundle install --path vendor/bundle ですよ
0084nobodyさん2011/07/24(日) 00:11:10.78ID:y8m7SKug
http://rubyforge.org/frs/?group_id=904

InstantRails で 簡単 Ruby on Rails 体験
http://omakase.ninpou.jp/apdev/instantror.htm
0085nobodyさん2011/07/24(日) 02:38:46.02ID:EbDs6EhB
ruby1.8.7をいれて
gem install -v=2.1.0 rails --include-dependencies
を実行することで

netbeansで編集→サーバー起動
まで可能となりました。

しかし、サーバーをたちあげると下記が出てサンプルのrailsアプリが開けません。
どうすればいいでしょうか?

MissingSourceFile in TopController#index

no such file to load -- sqlite3/sqlite3_native

RAILS_ROOT: C:/works/tes/page

This error occurred while loading the following files:
sqlite3
sqlite3/sqlite3_native
0086nobodyさん2011/07/24(日) 02:46:19.42ID:EbDs6EhB
ちなみにブラウザは立ち上がってます。
ただし上のエラーが出るってことです
0087nobodyさん2011/07/24(日) 02:46:24.60ID:???
エラーメッセージのまんまだと思うが…
0088nobodyさん2011/07/24(日) 02:54:25.72ID:EbDs6EhB

sqlite3.dllをいれることで自己解決しました。
rorはどうして、ここまでror本体でなくgem関係にも全て悩まされるのでしょうか?
簡単にrorのバージョンごとの切り替えを管理出来て
完全動作を保証したようなツールとかあればいいのですが
0089nobodyさん2011/07/24(日) 02:55:16.65ID:EbDs6EhB
>>87
でも、そのエラーだとsqlite3.dllをruby/binに入れろとは分かりませんよね。。。
ググって海外サイトを見て初めて分かりました
0090nobodyさん2011/07/24(日) 04:31:16.80ID:EbDs6EhB
質問させてください。

Windowsに XAMPP RAILS などを入れて利用しています。
投稿の際に日本語を使った時点で文字化けを起こします
XAMPPで入ったMysqlは初期では latinなどの文字列が設定されているようです。

my.cnfに下記を追記すればいいとのことでしたが
c:\xampp\mysql\binの中に my.cnfが 見当たりません
隠しフォルダの表示や登録外拡張子も表示させています。
どうすればいいでしょうか??

[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
0091nobodyさん2011/07/24(日) 07:32:44.15ID:EbDs6EhB
>>90は何とか自己解決しました
phpmyadminなどで直接テーブルやフィールドをutf8_general_ciヘ変更すればOKでした。
しかしNetbeansでマイグレーションを行うとデフォルトでのエンコーディングが必ず
latin1でテーブル(フィールドも)が作成されてしまいます。

http://www.mapee.jp/ruby/rails20instantrails20win.html

も試しましたが効果なく出来るテーブル(フィールド)はやはりlatin1です。
どうすればいいでしょうか?
0092nobodyさん2011/07/24(日) 07:39:51.72ID:???
みんなエディタ/IDEなに使ってるの?
0093nobodyさん2011/07/24(日) 08:02:03.71ID:???
ブラウザのjavascriptを無効にしてたら
jqueryは動かなくなる?
0094nobodyさん2011/07/24(日) 09:56:20.00ID:???
>>88
別にrorだけの問題じゃないと思うが…

>>92
俺はemacs

>>93
当然
0095nobodyさん2011/07/24(日) 10:34:43.30ID:HwC1Njq1
database.ymlは?
0096nobodyさん2011/07/24(日) 16:20:10.10ID:???
>>92
vim 一応 rails.vim入れてるけど殆ど使ってない
0097nobodyさん2011/07/24(日) 16:22:05.70ID:???
>>82
bundle exec つけて実行していないとか?
bundle exec rails server
とかで実行すれば、bundlerのバージョンが利用されるよ
0098nobodyさん2011/07/24(日) 18:11:04.96ID:y8m7SKug
Windows版VimでRubyを快適に使う設定-AutoComplPopが便利すぎる!! | ぐるらん
http://gururan.com/20100807/021504

http://www.kaoriya.net/software/vim/about
0099nobodyさん2011/07/25(月) 03:38:46.27ID:???
それにしても、Windowsを窓から投げ捨てるところから始めれば
躓くことが少なくていいんじゃないかな。
0100132011/07/25(月) 12:01:23.68ID:IAHMsfps
collection_Selectを4つ作り、controllerに渡して各パラメータを
@collection=で
[" hinmoku = ? and kaikyu = ? and kikaku1 = ? and kikaku2 = ? ", '玉ねぎ', 'L', '3', '個ネット']
というふうに整形しました。
これを
view/vegetables/index.html.erbで
<% @vegetables = Vegetable.find(:all, :conditions=>@condition).each do |vegetable| -%>
として実行すると
undefined method `%' for ["[\""]:Arrayというエラーが出ます。

整形したものをべた書きすると綺麗に通りますが、@collectionで代入すると
エラーです。

何故でしょうか?
0101nobodyさん2011/07/25(月) 12:12:33.69ID:???
掲示板とか 決まりきった機能 を組み込んでIDとパスワードを渡すだけで
すぐ使えるような組み込み型のモジュールとかってあるんですか?

あるとしたら、こういうタイプの組み込み型モジュールの呼称って何ですか?
0102nobodyさん2011/07/25(月) 12:20:36.38ID:eJ//7zAn
engines
0103nobodyさん2011/07/25(月) 12:42:20.17ID:???
>>102
ありがとう!調べてみたらログイン用とかあるんですね。

普通はwebサービスとか作る時って
自分で一から作るものですか?
それともこういったエンジンを部分利用して作業を極力軽減するのかな?
0104nobodyさん2011/07/25(月) 12:53:52.76ID:???
CMS作るときに、とあるStringフィールドを設けようと思います。

ただし、このフィールドは

英字のみだったり、
英数のみだったり、
半角のみだったり、
数字4桁+数字4桁+数字4桁だったり、
全角可能だったりと

フォーム入力時点のユーザー毎にバリデーションが異なります。

こういうのって標準のバリデーションではなく
正規表現を使って、それぞれのバリデーション検証を行うのが正しいですか?

また、そのユーザーのバリデーションパターンを決めるのも第三者が
フォーム入力で決めていく形です。

どういう流れに持っていくのが一般的ですか?
0105132011/07/25(月) 14:01:51.45ID:IAHMsfps
>>100 のものです。
<% @vegetables = Vegetable.find(:all, :conditions=>@condition).each do |vegetable| -%>
を
<% @vegetables = Vegetable.find(:all, :conditions=>[@condition]).each do |vegetable| -%>
としましたが、結果は同じでした。

@conditionが別に定義されているかも知れないので@cndなど別の変数にしたが結果は同じでした。

undefined method `%' for ["[\""]:Arrayというエラーはググッても1件も出てきません・・・。

当方Rails2.3.8です。

宜しくお願い致します。
0106nobodyさん2011/07/25(月) 16:34:48.91ID:???
>>105
Rails2.3.8で似たようなコードを書いてもエラーにはなりませんでした。
そもそも、[ "[\"" ] というlength=1の配列はどこから来ているのかが気になりますね。

@conditionの定義部分でタイポとかないでしょうか?
0107132011/07/25(月) 16:45:54.91ID:IAHMsfps
>>106
vegetables_controller.rbに
if params[:hinmoku_id]
@cnd = []
@cnd << ["[ \""]
@cnd << ["hinmoku = ? "]
end
と、直書きしてます。

でも@cnd << ["[ \""]を削っても、
undefined method `%' for ["hinmoku = ? "]:Array
となって同じでした。
0108nobodyさん2011/07/25(月) 16:53:52.10ID:???
[" hinmoku = ? and kaikyu = ? and kikaku1 = ? and kikaku2 = ? ", '玉ねぎ', 'L', '3', '個ネット']
としたいんですよね。
であれば、<< ではなくて、+= じゃないですかね。

controllerで、
logger.debug @cnd.inspect
や
viewで
<%=h @cnd.inspect %>
で見てみると、@cndが2重配列になっていると思います。
0109nobodyさん2011/07/25(月) 17:22:43.37ID:???
>>107
と、根本的なところですが、Viewでfindとかを書くのはあまり推奨されないので、
こんな感じでリファクタリングしていくと良いかなと思います。

Rails2.3.4から標準で入っているnamed_scopeと
named_scopeをデフォルトで色々定義してくれるsearchlogicというpluginを使って
https://github.com/binarylogic/searchlogic

1回目のリファクタリング
[controller]
search = Vegetable
search = search.hinmoku_id_eq(params[:hinmoku_id]) if !params[:hinmoku_id].blank?
search = search.kaikyu_id_eq(params[:kaikyu_id]) if !params[:kaikyu_id].blank?
search = search.kikaku1_id_eq(params[:kikaku1_id]) if !params[:kikaku1_id].blank?
search = search.kikaku2_id_eq(params[:kikaku2_id]) if !params[:kikaku2_id].blank?
@vegetables = search.all
0110nobodyさん2011/07/25(月) 17:24:50.46ID:???
>>109 続き
このままだとcontrollerが肥大化してしまうので、modelに回します。
2回目のリファクタリング
[controller]
@vegetables = Vegetable.search(params).all

[model]
class Vegetable
def self.search(params={})
search = self
search = search.hinmoku_id_eq(params[:hinmoku_id]) if !params[:hinmoku_id].blank?
search = search.kaikyu_id_eq(params[:kaikyu_id]) if !params[:kaikyu_id].blank?
search = search.kikaku1_id_eq(params[:kikaku1_id]) if !params[:kikaku1_id].blank?
search = search.kikaku2_id_eq(params[:kikaku2_id]) if !params[:kikaku2_id].blank?
search
end
end
0111nobodyさん2011/07/25(月) 17:26:08.12ID:???
>>110 続き で、3回目のリファクタリングで
modelのメソッドをArrayのinjectと、文字列からメソッド発行ができるsendを使ってスリムに
[model]
class Vegetable
def self.search(params={})
[:hinmoku_id, :kaikyu_id, :kikaku1_id, :kikaku2_id].inject(self){|search, param| params[param].blank? ? search : search.send("#{param}_eq",params[param]) }
end
end

動作未検証ですが、参考までに。
0112132011/07/25(月) 17:42:26.98ID:IAHMsfps
>>108
<%=h @cnd.inspect %>
でみると、
["\"", "hinmoku = ? ", "and kaikyu = ? ", "and kikaku1 = ? ", "and kikaku2 = ?", "\"", ", '", "バナナ", "'", ", '", "2L秀", "'", ", '", 5, "'", ", '", "個ネット", "'"]
になってました。

でも、"とか\を取ると、それはそれで動かなくなるんですが、
根本的に記載方法を間違えているのでしょうか???
0113nobodyさん2011/07/25(月) 17:58:46.67ID:???
そもそも何で"\""を配列に入れようとしているのか…
>>100 を素直に代入すればいいだけだと思うが…
0114132011/07/25(月) 17:58:53.48ID:???
>>109
書き込み気付きました。
のちのちのメンテを考えるときれいにしときたいので、
頂いたアドバイスをもとに頑張ってみます
0115nobodyさん2011/07/25(月) 17:59:48.06ID:???
>>112
[" hinmoku = ? and kaikyu = ? and kikaku1 = ? and kikaku2 = ? ", '玉ねぎ', 'L', '3', '個ネット']
になるようにゴリゴリ書けば、
@cnd_first = []
@cnd_last = []

[hinmoku]
@cnd_first << "hinmoku = ?"
@cnd_last << "タマネギ"
[kaikyu]
@cnd_first << "kaikyu = ?"
@cnd_last << "L"

@cnd = [@cnd_first.join(" and ")] + @cnd_last

でいけるかな
0116132011/07/25(月) 18:01:29.60ID:???
>>113
[" hinmoku = ? and kaikyu = ? and kikaku1 = ? and kikaku2 = ? ", '玉ねぎ', 'L', '3', '個ネット']
を再現するように、
["を書くために"[\""て書きました。
0117nobodyさん2011/07/25(月) 18:05:55.04ID:???
あぁ…全部文字列だと思ってたのね…

Rail がどーたら言う前に、Ruby を勉強した方がいいよ
その方が問題解決にはずっと近道だし、今後似たようなことで悩まなくてよくなるから
0118nobodyさん2011/07/25(月) 18:17:18.52ID:eJ//7zAn

テッチャン☆ぶろぐ: [Rails]searchlogic v2でテーブルのソート的なもの。
http://shasou.blogspot.com/2010/02/railssearchlogic-v2.html

スリムになったSearchlogic v2をいじってみた - MothProgのうしろがわ
http://d.hatena.ne.jp/mothprog/20090819/1250692210

https://github.com/binarylogic/searchlogic
http://asciicasts.com/episodes/176-searchlogic
0119nobodyさん2011/07/25(月) 18:46:03.06ID:G/8niHgC

students = Student.scoped_by_name_and_grade("Ana", 2).all
ttp://d.hatena.ne.jp/mothprog/20090819/1250692210
0120nobodyさん2011/07/25(月) 18:51:27.50ID:eJ//7zAn
Searchlogic
http://railscasts.com/episodes/176-searchlogic

Episode 111: Advanced Search Form
http://railscasts.com/episodes/111-advanced-search-form

Make searching and ordering data in your application trivial
https://github.com/binarylogic/searchlogic
0121nobodyさん2011/07/26(火) 11:05:09.95ID:???
ログイン系のプラグインでCaptchaが標準でついてるのはないのかな?
0122nobodyさん2011/07/26(火) 11:54:53.75ID:???
ログインとCaptchaって意味ないと思うが…
サインアップなら分かるが
0123nobodyさん2011/07/26(火) 12:05:05.74ID:???
>>122
サインアップ機能(ログイン機能つき)でCaptcha付きのことです
0124nobodyさん2011/07/26(火) 12:17:22.22ID:???
>>121
このへん?
https://github.com/plataformatec/devise/wiki/How-To:-Use-Recaptcha-with-Devise

Google の Recaptcha を使うようだが
0125nobodyさん2011/07/26(火) 12:31:51.33ID:QroQWCDs
[Rails]Rails+MySQLで文字セット照合順序(collation)を変更する | DENPA GROOVE
http://jokami.mydns.jp/2011/05/25/railsrailsmysqlで文字セット照合順序(collation)を変更する/
0126nobodyさん2011/07/26(火) 12:40:36.04ID:???
>>124
これって、ただのキャプチャ単体ですよね?
探してるのはキャプチャが組み込まれているログイン管理・新規登録機能プラグインです。
0127nobodyさん2011/07/26(火) 12:57:27.97ID:???
>>126
よく嫁
そのページはdeviseという認証機能プラグインのプロジェクトの中にあるだろ
0128nobodyさん2011/07/26(火) 13:08:32.65ID:???
「それはラジオよ。」

友達のおばちゃんに言われた。

0129nobodyさん2011/07/26(火) 13:54:41.22ID:QroQWCDs

reCAPTCHA: Stop Spam, Read Books
http://www.google.com/recaptcha

Google Acquires reCAPTCHA
http://mashable.com/2009/09/16/google-acquires-recaptcha/
0130nobodyさん2011/07/26(火) 14:01:13.57ID:QroQWCDs
ambethia/recaptcha - GitHub
https://github.com/ambethia/recaptcha
0131nobodyさん2011/07/26(火) 14:38:52.54ID:???
deviseはサインアップ時の確認画面がないのがちょっと
0132nobodyさん2011/07/26(火) 14:40:49.73ID:???
だったら自分で作れ
0133nobodyさん2011/07/26(火) 14:51:18.42ID:???
作ったけど何か?
0134nobodyさん2011/07/26(火) 17:19:42.49ID:QroQWCDs
rails searchlogic plugin search in multiple columns - ruby-on-rails - DoExpert
http://www.doexpert.net/a/4e1754e4592b0a27c02867dc

http://b.hatena.ne.jp/t/searchlogic?sort=eid
0135nobodyさん2011/07/26(火) 21:29:54.59ID:???
しかし、確認画面って日本独特なんだろうね。
サインアップで間違っても、編集ページで直せば良いじゃん。ってことなんだろつ。
0136nobodyさん2011/07/27(水) 22:35:28.41ID:ZS4k7BV+
Slim - A Fast, Lightweight Template Engine for Ruby  
http://slim-lang.com/
0137nobodyさん2011/07/28(木) 09:43:39.08ID:???
http://designpatternsinruby.com/
ここ、開けないんだけどなんでだろ?
本のサンプル落としたいのに・・・・。

0138nobodyさん2011/07/28(木) 12:05:30.82ID:???
rails2.x
rails3.x

それぞれでの
主流のログイン認証プラグインとgemって何がある?
出来れば今もサポートされてるので。
0139nobodyさん2011/07/28(木) 12:08:05.40ID:???
>>138
http://ruby-toolbox.com/categories/rails_authentication.html
0140nobodyさん2011/07/28(木) 23:53:05.56ID:4Q9csvAm
O'Reilly OSCON Java 2011, Raffi Krikorian, "Twitter: From Ruby on Rails to the JVM"
 http://www.youtube.com/watch?v=ohHdZXnsNi8
0141nobodyさん2011/07/29(金) 00:13:17.03ID:Tkg/4Pbb
vigetlabs/simplest_auth - GitHub
https://github.com/vigetlabs/simplest_auth
0142nobodyさん2011/07/29(金) 02:46:50.92ID:Tkg/4Pbb


Githubにソースコードがあったらボタン1つでデプロイすることが出来る。
http://www.ninxit.com/blog/2011/07/28/python-flask-fluxfle/

One Click Install Software Library
WordPress 3.1.3 (Japanese)
Redmine 1.2-stable
http://www.fluxflex.com/library

fluxflex ドキュメント
http://jp.doc.fluxflex.com/

http://www.youtube.com/watch?v=iyqWyZVXl6g
0143nobodyさん2011/07/29(金) 15:17:50.97ID:NreIb2ba
既存のレコードをeditで編集し変更した内容を
submitボタンを2つにしてそのままupdateと新規insertにしたい。

もしくはレコードのコピー+idの採番

をしたいのですが、どうやったら可能でしょうか?
0144nobodyさん2011/07/29(金) 15:31:54.32ID:Tkg/4Pbb
高トラフィックサイトをRailsで構築するためのTips基礎編
http://www.slideshare.net/kaznum/railstips

Gregg PollackとScaling Railsのハウツー
1つには、Railsアプリケーションをうまくスケーリングするために必要なすべての情報をRails開発者に与えること。
開発者は、これらの技術を使用する必要はないかもしれません。
しかし、できれば、開発者がビデオを見て、何百万人の同時ユーザーを扱うRailsアプリケーションを
作成できます、とクライアントに言える自信を持ってもらいたいのです。
2番目に、Railsアプリケーションをスケーリングすることがどれほど簡単かを、他の言語の開発者に示すこと。
http://www.infoq.com/jp/articles/gregg-pollack-scaling-rails

Ruby Proxies for Scale, Performance, and Monitoring
http://www.slideshare.net/igrigorik/ruby-proxies-for-scale-performance-and-monitoring-gogaruco-igvitacom-1396734

osc2008_opensuse-moonlinx.pdf (application/pdf オブジェクト)
Perlbal
http://blog.geeko.jp/wp-content/uploads/2008/09/osc2008_opensuse-moonlinx.pdf
0145nobodyさん2011/07/29(金) 17:33:27.53ID:NreIb2ba
143です。
もしくは、indexのshow | edit | destroyにcopyとつけても良いです。

試しにlink_to '複製', new_vegetable_path(vegetable)としたら
真っ白になりました・・・。
0146nobodyさん2011/07/29(金) 19:43:08.17ID:Tkg/4Pbb
Rails アプリを nginx の拡張モジュールで置き換えて高速化する方法 - HeartRails Tech Blog
毎秒 1000 アクセスはクリア。CPU の使用率は 25% 前後
http://techblog.heartrails.com/2011/01/rails-nginx.html
0147nobodyさん2011/07/29(金) 19:50:18.37ID:Tkg/4Pbb
Apacheに対するDOS攻撃を回避する「mod_evasive」 (ひるねこ日記)
http://www.aubetec.com/hiruneko/blog/archives/2007/05/apachedosmod_evasive.html

mitukiii.jp | UbuntuのApacheにDOS攻撃を回避するmod_evasive入れた
http://mitukiii.jp/2010/12/19/ubuntu-apache-install-mod-evasive/

Apache DoS攻撃対策 mod_evasiveインストール | Satake Studio Developer's Blog
sudo apt-get install libapache2-mod-evasive
http://dev.satake7.net/2010/05/05/apache-dos攻撃対策-mod_evasiveインストール/

http://blog.bodhizazen.net/linux/how-to-mod_evasive-ubuntu-904/
0148nobodyさん2011/07/29(金) 21:08:00.14ID:JxuS3wyn
>>143
submitに名前を付けておいて受け取った側で識別、
createとupdateを呼び分ける。
0149nobodyさん2011/07/30(土) 01:02:16.68ID:???
>>145
copyの方がviewの無理がないので、自分ならそっちにします。

newに飛ばしても当然ダメなので、controllerにmethod追加かな。
0150nobodyさん2011/07/30(土) 01:18:55.43ID:K7JH1lDj


O'Reilly OSCON Java 2011, Raffi Krikorian, "Twitter: From Ruby on Rails to the JVM"
http://www.youtube.com/watch?v=ohHdZXnsNi8

OpenFeintジェイソン・シトロンCEOに独占インタビュー/Tech総研
ちなみに、僕らのプラットフォームは、Ruby on Railsで開発されています。
http://rikunabi-next.yahoo.co.jp/tech/docs/ct_s03600.jsp?p=001896

Airbnb: Which programming languages does Airbnb use? - Quora
http://www.quora.com/Airbnb/Which-programming-languages-does-Airbnb-use?

Inside Groupon: RailsConf 2011 - O'Reilly Conferences, May 16 - 19, 2011, Baltimore, MD!
http://en.oreilly.com/rails2011/public/schedule/detail/17691

Hulu is built on Ruby on Rails.
http://techcrunch.com/2008/01/24/hulu-discusses-private-beta-suggests-public-launch-time-frame/

http://ruby50.com/
■ このスレッドは過去ログ倉庫に格納されています