方法が分からず困っております

20 views
Skip to first unread message

松岡 直樹

unread,
Jul 19, 2009, 6:34:33 AM7/19/09
to rbc-incubator
始めまして。
松岡と申します。

今回、初めてrailsを業務に使用することになりました。
そこで、やり方がわからずに困っている箇所がございますので、
お力を貸して貰えないでしょうか。

テーブルを囲んだひとつのform内に
複数のsubmitボタンを配置し、押したボタンで動作を変えたくなるときは
どうすればよいのでしょうか。

strutsで言えば下記の様な方法です。
http://www.fireproject.jp/feature/struts/advanced/
lookup_dispatch_action.html」

どうか、よろしくお願いいたします

Hirotake FUchigami

unread,
Jul 19, 2009, 7:02:41 AM7/19/09
to rbc-in...@googlegroups.com
松岡さん

渕上と申します。

以前、rbc-incubatorで
「1フォームに複数のsubmitボタンを設け、それぞれターゲットメソッドを変える方法」
http://groups.google.com/group/rbc-incubator/browse_thread/thread/149d1e8db6e4141b?pli=1

に関して議論されています。ご参考になるでしょうか?

以上、取り急ぎでした。

2009/07/19 19:34 に 松岡 直樹<naoki.mat...@gmail.com> さんは書きました:

松岡 直樹

unread,
Jul 19, 2009, 7:47:27 AM7/19/09
to rbc-incubator
ありがとうございます。
探していた情報です。
参考にさせていただきます。

On 7月19日, 午後8:02, Hirotake FUchigami <tai...@gmail.com> wrote:
> 松岡さん
>
> 渕上と申します。
>
> 以前、rbc-incubatorで
> 「1フォームに複数のsubmitボタンを設け、それぞれターゲットメソッドを変える方法」http://groups.google.com/group/rbc-incubator/browse_thread/thread/149...
>
> に関して議論されています。ご参考になるでしょうか?
>
> 以上、取り急ぎでした。
>
> 2009/07/19 19:34 に 松岡 直樹<naoki.matsuoka.l...@gmail.com> さんは書きました:
>
>
>
>
>
> > 始めまして。
> > 松岡と申します。
>
> > 今回、初めてrailsを業務に使用することになりました。
> > そこで、やり方がわからずに困っている箇所がございますので、
> > お力を貸して貰えないでしょうか。
>
> > テーブルを囲んだひとつのform内に
> > 複数のsubmitボタンを配置し、押したボタンで動作を変えたくなるときは
> > どうすればよいのでしょうか。
>
> > strutsで言えば下記の様な方法です。
> > 「http://www.fireproject.jp/feature/struts/advanced/
> > lookup_dispatch_action.html」
>
> > どうか、よろしくお願いいたします- 引用テキストを表示しない -
>
> - 引用テキストを表示 -

秋間武志

unread,
Jul 19, 2009, 10:56:05 AM7/19/09
to rbc-in...@googlegroups.com
松岡さん

秋間と申します。

この機能を実現するためのプラグインをgithubで公開しております。

http://github.com/akm/form_extensions/tree/master

良かったら使ってみてください。


2009/7/19 松岡 直樹 <naoki.mat...@gmail.com>:

松岡 直樹

unread,
Jul 20, 2009, 5:52:15 AM7/20/09
to rbc-incubator
秋間さん

松岡です。

ありがとうございます。
早速、火曜日に使ってみます。


On 7月19日, 午後11:56, 秋間武志 <akm2...@gmail.com> wrote:
> 松岡さん
>
> 秋間と申します。
>
> この機能を実現するためのプラグインをgithubで公開しております。
>
> http://github.com/akm/form_extensions/tree/master
>
> 良かったら使ってみてください。
>
> 2009/7/19 松岡 直樹 <naoki.matsuoka.l...@gmail.com>:
>
>
>
>
>
> > ありがとうございます。
> > 探していた情報です。
> > 参考にさせていただきます。
>
> > On 7月19日, 午後8:02, Hirotake FUchigami <tai...@gmail.com> wrote:
> >> 松岡さん
>
> >> 渕上と申します。
>
> >> 以前、rbc-incubatorで
> >> 「1フォームに複数のsubmitボタンを設け、それぞれターゲットメソッドを変える方法」http://groups.google.com/group/rbc-incubator/browse_thread/thread/149...
>
> >> に関して議論されています。ご参考になるでしょうか?
>
> >> 以上、取り急ぎでした。
>
> >> 2009/07/19 19:34 に 松岡 直樹<naoki.matsuoka.l...@gmail.com> さんは書きました:
>
> >> > 始めまして。
> >> > 松岡と申します。
>
> >> > 今回、初めてrailsを業務に使用することになりました。
> >> > そこで、やり方がわからずに困っている箇所がございますので、
> >> > お力を貸して貰えないでしょうか。
>
> >> > テーブルを囲んだひとつのform内に
> >> > 複数のsubmitボタンを配置し、押したボタンで動作を変えたくなるときは
> >> > どうすればよいのでしょうか。
>
> >> > strutsで言えば下記の様な方法です。
> >> > 「http://www.fireproject.jp/feature/struts/advanced/
> >> > lookup_dispatch_action.html」
>
> >> > どうか、よろしくお願いいたします- 引用テキストを表示しない -
>
> >> - 引用テキストを表示 -- 引用テキストを表示しない -
>
> - 引用テキストを表示 -

kiyo

unread,
Sep 11, 2009, 9:45:10 PM9/11/09
to rbc-in...@googlegroups.com
Kiyoです。

初歩的な質問で申し訳ないのですが、
初期表示する画面を「index.html.erb」から、
別の名前の画面(AAA.html.erb)にしたいのですが、
controllerをどのように変更したらよいのでしょうか?

また、controller以外に変更は必要ないでしょうか?

Hirotake FUchigami

unread,
Sep 12, 2009, 5:11:58 AM9/12/09
to rbc-in...@googlegroups.com
Kiyoさん

渕上と申します。

config/routes.rbに、
map.connect ':controller/:action/:id'
という記述があると思います。以下のオプションを
つけたら、デフォルトのアクション(index)を変更できます。

map.connect ':controller/:action/:id', :action => 'aaa'

「, :action => 'aaa'」の記述を追加してみてください。
そうすると、例えば、「http://localhost:3000/foo」にアクセスした場合、
indexアクションが呼ばれずに、aaaアクションが呼ばれるはずです。

以上の回答で認識合ってますでしょうか?
よろしくおねがいします。

http://api.rubyonrails.org/classes/ActionController/Routing.html
を参考にしてみてください。

2009年9月12日10:45 kiyo <kiyo...@f4.dion.ne.jp>:
> No virus found in this outgoing message.
> Checked by AVG - www.avg.com
> Version: 8.5.409 / Virus Database: 270.13.92/2364 - Release Date: 09/11/09 17:51:00
>
>

Hirotake FUchigami

unread,
Sep 12, 2009, 5:20:50 AM9/12/09
to rbc-in...@googlegroups.com
すいません、勢い勇んで書いておきながら、
先走った回答したかも、と気づきました。

正しくは、indexアクションが呼ばれた際に、aaa.html.erbを描画したい
という質問ですよね?

その場合は、controllerに、
render :action => :aaa
と書いていただければ、aaa.html.erbがレンダリングされます。

rails2.3.2以降では、確か
render :aaa
ダケでいけると思います。

すいません、以上です。

2009年9月12日18:11 Hirotake FUchigami <tai...@gmail.com>:

秋間武志

unread,
Sep 12, 2009, 5:37:20 AM9/12/09
to rbc-in...@googlegroups.com
渕上さん、Kiyoさん

秋間です。

たぶん、Railsのアプリを起動して、http://localhost:3000
アクセスした際に実行される「画面」を変えたいということですよね?

RailsのMVCの仕組みでは、ブラザからのリクエストはconfig/routes.rbの
定義に従ってコントローラのアクションが実行されます。

最初に表示される画面を変える場合は、コントローラ名/アクション名が
指定されていないリクエストに対して、どのコントローラのどのアクションで
処理するのかを設定する必要があります。

アプリを作った時点では、コントローラではなく public/index.html が返されますので、
1. このファイルを削除して、
2. config/routes.rb を 以下のようにしてください。

ActionController::Routing::Routes.draw do |map|
...

# デフォルトのアクションの処理
map.root :controller => "foo", :action => "bar"
end

AAA.html.erbがどのディレクトリにあるのかわかりませんので、
上記では、 app/views/foo/bar.html.erb としてあるものとして設定しています。
# ビュー名はアクション名に対応するので、大文字は使わない方がいいですよ。

もしapp/views/foo が存在しなければ、そもそも処理するためのコントローラが
ないので、上記の設定では動きませんので、

ruby script/generate controller foo bar

として、fooコントローラと、そのビューbar.html.erb を作ってbar.html.erb を
置き換えてください。

fooやbarはてきとーな名前です。適宜置き換えて使ってください。

参考になれば幸いです。







2009/9/12 Hirotake FUchigami <tai...@gmail.com>:

Hirotake FUchigami

unread,
Sep 12, 2009, 5:44:28 AM9/12/09
to rbc-in...@googlegroups.com
あ、そっちでしたか?
相変わらず、噛み合ってなくてすみません。

2009年9月12日18:37 秋間武志 <akm...@gmail.com>:

秋間武志

unread,
Sep 12, 2009, 12:06:21 PM9/12/09
to rbc-in...@googlegroups.com
いえいえ、そうじゃないかなーという話で失礼しましたー


2009/9/12 Hirotake FUchigami <tai...@gmail.com>:

kiyo

unread,
Sep 13, 2009, 2:13:37 AM9/13/09
to rbc-in...@googlegroups.com
Kiyoです

渕上さん、秋間さん、ご回答有難うございます。

質問としては、indexアクションが呼ばれたときの画面に関してだったのですが、
http://localhost:3000の画面も変更できるのですね。

大変参考になりました。
--------------------------------------------------------------------------------



No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.409 / Virus Database: 270.13.94/2366 - Release Date: 09/12/09
17:50:00
Message has been deleted

kiyo

unread,
Sep 13, 2009, 2:32:16 AM9/13/09
to rbc-in...@googlegroups.com
Kiyoです。

DB名についてですが、プロジェクト名と等しいことが基本かと思うのですが、
プロジェクト名と違うDB名を設定するにはどうしたらよいのでしょうか?

database.ymlのdatabaseを変更するだけでよいのでしょうか?

Message has been deleted
Message has been deleted
Message has been deleted

kiyo

unread,
Sep 13, 2009, 8:37:54 AM9/13/09
to rbc-in...@googlegroups.com
kiyoです。


eclipse(V3.5)にて、
AプロジェクトとBプロジェクトのrailsプロジェクトを同じ環境下に作成しました。


Aプロジェクトを実行したところ、
Routing Errorとなり「No route matches "/xxxx" with {:method=>:get}」のメッセージが表示されたので、
対応としてrouting.rbに、「map.connect '', :controller => 'xxxxs'」を追加してエラーの発生は解決しました。


プロジェクト毎に、違うポートでサーバーは起動されています。
本来であれば、routing.rbの書き換えは必要ないと思うのですが、
なぜ書き換えが必要だったのか理由が不明です。


お手数ですが、ご教示いただけませんでしょか?

Hirotake FUchigami

unread,
Sep 13, 2009, 8:31:40 PM9/13/09
to rbc-in...@googlegroups.com
kiyoさん

ふちがみです。

> 本来であれば、routing.rbの書き換えは必要ないと思うのですが、
> なぜ書き換えが必要だったのか理由が不明です。

私も、以上の認識ですが、もう少し詳しく状況をお聞かせください。
・なんという名前のコントローラを作成したのか?
・コントローラの中にどのようなアクション(インスタンスメソッド)を追加したのか?
以上、よろしくお願いします。

2009年9月13日21:05 kiyo <kiyo...@f4.dion.ne.jp>:
> No virus found in this outgoing message.
> Checked by AVG - www.avg.com

Hirotake FUchigami

unread,
Sep 13, 2009, 8:33:09 PM9/13/09
to rbc-in...@googlegroups.com
kiyoさん

ふちがみです。

MySQLでは、確かにデフォルトのDB名は「プロジェクト名_環境名」
ですので、そこを変更するだけでいいと思います。

ご確認ください。

2009年9月13日15:32 kiyo <kiyo...@f4.dion.ne.jp>:
> No virus found in this outgoing message.
> Checked by AVG - www.avg.com

kiyo

unread,
Sep 13, 2009, 8:47:35 PM9/13/09
to rbc-incubator
ふちがみさん。
Kiyoです。

1.作成したプロジェクト Jinji3
2.作成したコントローラ jinji3s_controller.rb
3.コントローラには、アクションは追加しておりません。

以上、よろしくお願いします。

kiyo

unread,
Sep 13, 2009, 9:35:34 PM9/13/09
to rbc-incubator
Kiyoです。

以下のControllerで、
indexアクションが呼ばれたときの画面の変更を試してみました。
「respond_to」以降の命令はコメントにしないとNGだったのですが、
これだと、HTMLとXMLのレスポンスが取得できないと思うのですが・・・・

class BlogsController < ApplicationController
# GET /blogs
# GET /blogs.xml
def index
@blogs = Blog.all

render :action => :test

# respond_to do |format|
# format.html # index.html.erb
# format.xml { render :xml => @blogs }
# end
end

Hirotake FUchigami

unread,
Sep 13, 2009, 10:07:58 PM9/13/09
to rbc-in...@googlegroups.com
Kiyoさん

respond_to内の、format.htmlにアクションの指定をしてみてはいかがでしょう?

respond_to do |format|
format.html { render :action => :test }
format.xml { render :xml => @blogs }
end

2009年9月14日10:35 kiyo <kiyo...@f4.dion.ne.jp>:

kiyo

unread,
Sep 13, 2009, 11:16:29 PM9/13/09
to rbc-incubator
Kiyoです。

respond_to内の、format.htmlにアクションの指定でOKでした。

kiyo

unread,
Sep 13, 2009, 11:33:19 PM9/13/09
to rbc-incubator
Kiyoです。

設定を以下のようにしてみました。

しかし、blogs_developmentのデータが表示されましたので、
接続先が変更できていないようです。

ちなみに、blogs_developmentを削除して実行したら、エラーとなりました。
ほかにも変更が必要でしょうか?

development:
adapter: mysql
encoding: utf8
reconnect: false
# database: blogs_development
database: blogs2_development
pool: 5
username: root
password: root
host: localhost

Hirotake FUchigami

unread,
Sep 14, 2009, 1:00:37 AM9/14/09
to rbc-in...@googlegroups.com
Kiyoさん

ふちがみです

接続先変更後、
rake db:create
されましたでしょうか?

ご確認お願いします。

2009年9月14日12:33 kiyo <kiyo...@f4.dion.ne.jp>:

kiyo

unread,
Sep 14, 2009, 1:48:49 AM9/14/09
to rbc-incubator
Kiyoです。

「rake db:create」は実行せずに、
ツールにて直接DBを作成しました。


On 9月14日, 午後2:00, Hirotake FUchigami <tai...@gmail.com> wrote:
> Kiyoさん
>
> ふちがみです
>
> 接続先変更後、
> rake db:create
> されましたでしょうか?
>
> ご確認お願いします。
>
> 2009年9月14日12:33 kiyo <kiyot...@f4.dion.ne.jp>:
>
>
>
>
>
> > Kiyoです。
>
> > 設定を以下のようにしてみました。
>
> > しかし、blogs_developmentのデータが表示されましたので、
> > 接続先が変更できていないようです。
>
> > ちなみに、blogs_developmentを削除して実行したら、エラーとなりました。
> > ほかにも変更が必要でしょうか?
>
> > development:
> > adapter: mysql
> > encoding: utf8
> > reconnect: false
> > # database: blogs_development
> > database: blogs2_development
> > pool: 5
> > username: root
> > password: root
> > host: localhost- 引用テキストを表示しない -
>
> - 引用テキストを表示 -

kiyo

unread,
Sep 14, 2009, 3:55:23 AM9/14/09
to rbc-incubator
Kiyoです。

サーバーを再起動する必要があったようです。
> > - 引用テキストを表示 -- 引用テキストを表示しない -
>
> - 引用テキストを表示 -

Hirotake FUchigami

unread,
Sep 14, 2009, 5:01:36 AM9/14/09
to rbc-in...@googlegroups.com
Kiyoさん

ふちがみです。

http://localhost:3000/jinji3s

にアクセスして、Routing Errorが発生したという認識でよろしいですか?

2009年9月14日9:47 kiyo <kiyo...@f4.dion.ne.jp>:

kiyo

unread,
Sep 14, 2009, 9:38:20 AM9/14/09
to rbc-in...@googlegroups.com
Kiyoです。

そのとおりです。
--------------------------------------------------------------------------------



No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.5.409 / Virus Database: 270.13.96/2369 - Release Date: 09/14/09
05:51:00

Hirotake FUchigami

unread,
Sep 15, 2009, 2:36:03 AM9/15/09
to rbc-in...@googlegroups.com
Kiyoさん

ふちがみです

そうなると、ちょっと原因が分からないので、
routing error となった際の、詳細なログを
教えてもらえませんか?

2009年9月14日22:38 kiyo <kiyo...@f4.dion.ne.jp>:
> No virus found in this outgoing message.
Reply all
Reply to author
Forward
0 new messages