rails:2846
From: 秦 耕造 <k_hada@m...>
Date: Fri, 15 Aug 2008 16:04:46 +0900
Subject: [rails:2846] Re: 画面で入力した内容を次画面でhidden項目に格納する方法
質問者 秦です。
詳細なご説明ありがとうございます。
おかげさまで、配列、ハッシュの内容が理解できました(^^)
ご説明いただいた内容を参考に修正し、以下のように実装できました。
------------------修正後ソース----------------------------
コントローラで
@keiros = params[:keiro]
画面遷移先のビューで
<% @keiros.each_with_index{|keiro,i| %>
<input id="statas_id_<%= i %>" name="keiro[<%= i %>][statas_id]"
type="hidden" value="<%= keiro[1]["statas_id"] %>" />
<% } %>
--------------------------------------------------------
ただ、今回は、railsの hidden_fieldヘルパーメソッドを使用しないで、
htmlの<input type="hidden" >で実装しました。
hidden_fieldヘルパーメソッドを使用しても実装できるのでしょうか?
hidden_fieldを使用する場合、配列ではなく、アクセサ(attr_accessor)を
使用して、データを格納する必要があるのでしょうか??
take_tk <ggb03124@n...> wrote:
> たけ(tk)です
>
> 蛇足を付けておきます。
>
> Re: [rails:2843] 画面で入力した内容を次画面でhidden項目に格納する方法 に
>
> > 「undefined method `statas_id' for ["0", {"statas_id"=>"1"}]:Array」とい
> > っているのだから
> > keiro変数に入っているのは ["0", {"statas_id"=>"1"}] という配列だというこ
> > とですね。
>
> (1)ハッシュを each_with_index で回した場合には、実ブロックパラメータ
> には《[キー,値]の配列》とインデックスの二つの値が入ります。
>
> hash = {"10"=>{ "statas_id"=>"21"}, "11"=>{"statas_id"=>"22"}, "12"=>{"statas_id"=>"23"}}
>
> hash.each_with_index{|key_value_array,index|
> p [
> :key_value_array, key_value_array,
> :index, index
> ]
> }
>
> =begin
>
> [:key_value_array, ["11", {"statas_id"=>"22"}], :index, 0]
> [:key_value_array, ["12", {"statas_id"=>"23"}], :index, 1]
> [:key_value_array, ["10", {"statas_id"=>"21"}], :index, 2]
>
> =end
>
> (2)ハッシュをeachで回すときにも、実ブロックパラメータには《[キー,値]
> の配列》が入ります。
>
> hash = {"10"=>{ "statas_id"=>"21"}, "11"=>{"statas_id"=>"22"}, "12"=>{"statas_id"=>"23"}}
>
> hash.each{|key_value_array|
> p [
> :key_value_array, key_value_array
> ]
> }
>
> =begin
>
> [:key_value_array, ["11", {"statas_id"=>"22"}]]
> [:key_value_array, ["12", {"statas_id"=>"23"}]]
> [:key_value_array, ["10", {"statas_id"=>"21"}]]
>
> =end
>
> (3)ハッシュをeachで回すとき、普通は |key,value|で受けるわけですが・・
>
> hash.each{|key,value|
> p [
> :key, key,
> :value, value
> ]
> }
>
> =begin
>
> [:key, "11", :value, {"statas_id"=>"22"}]
> [:key, "12", :value, {"statas_id"=>"23"}]
> [:key, "10", :value, {"statas_id"=>"21"}]
>
> =end
>
> (4)これは、実パラメータとして入ってきた《[キー,値]の配列》を多重代入
> の規則によって分解しているだけです。
>
> key_value_array = ["10", {"statas_id"=>"21"}]
> key, value = key_value_array
> p [
> :key, key,
> :value, value
> ]
>
> =begin
>
> [:key, "10", :value, {"statas_id"=>"21"}]
>
> =end
>
> Take_tk = KUMAGAI Hidetake
> たけ(tk)=熊谷秀武
>
>
> --
> ML: rails@r...
> 使い方: http://QuickML.com/
>
--
ML: rails@r...
使い方: http://QuickML.com/
2824 2008-07-28 04:25 [k_hada@m... ] DB登録・更新時以外でのvalidate? 2825 2008-07-28 04:41 ┣[yuanying@f... ] 2826 2008-07-28 04:42 ┗[yuichi_katahira@m...] 2827 2008-07-28 06:52 ┣[k_hada@m... ] 2839 2008-08-12 04:42 ┗[k_hada@m... ] collection_selectでpromptができない 2840 2008-08-12 08:04 ┗[sakuro@2... ] 2841 2008-08-12 08:30 ┗[nov@y... ] 2842 2008-08-12 09:17 ┣[k_hada@m... ] 2843 2008-08-14 14:46 ┃┗[k_hada@m... ] 画面で入力した内容を次画面でhidden項目に格納する方法 2844 2008-08-15 04:09 ┃ ┗[ggb03124@n... ] 2845 2008-08-15 04:54 ┃ ┗[ggb03124@n... ] -> 2846 2008-08-15 09:04 ┃ ┗[k_hada@m... ] 2891 2008-10-29 09:22 ┣[k_hada@m... ] findメソッドのconditionsを動的に変更する方法 2892 2008-10-29 09:27 ┃┣[craccho@g... ] 2893 2008-10-29 09:29 ┃┗[sakuro@2... ] 2894 2008-10-29 09:35 ┃ ┗[k_hada@m... ] 2915 2008-11-27 09:56 ┗[k_hada@m... ] 富士通のSymfowareというDBを使用する方法 2917 2008-11-28 02:34 ┗[sakuro@2... ]