1

私は Ruby と Haml を初めて使用するので、これについてぐるぐる回っています。Google で調べても、使用できるサンプル コードが表示されません。

を使用してselect_tag、テーブルからリストを作成できます。しかし、アイテムの単純な静的リストを使用する方法がわかりません。誰かがこれを適切な Haml に変更できますか? 注: ソース テーブルは「email」で、フィールドは「status」です。

= select_tag(:email, :status, {"canceled", "pending", "success"})

「キャンセル済み、保留中、成功」という項目だけが含まれるドロップダウンリストを探しています。

私が得るエラーはodd number list for Hash._hamlout.format_script...

更新: 必要と思われるサンプル コードを見つけましたが、エラーは発生しませんが、ドロップダウン ボックスは空です:

= select_tag(:email, :status,{ "canceled" => "1", "pending" => "2", "success"=>"3"})

生成される HTML は次のとおりです。

<select female="2" male="1" id="email" name="email">status </select >
4

2 に答える 2

4

オブジェクト指向ヘルパーではなく、タグ ヘルパーを使用しています。使用するselect

の使用もお勧めしoptions_for_selectます。そのようです:

= select(:email, :status, options_for_select([["canceled", "1"], ["pending", "2"], ["success", "3"]]))

参照: http://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/select

http://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/options_for_select

于 2012-08-14T00:10:55.847 に答える
1

うまくいきました!「Select_tag」の代わりに「Select」を使用する必要があります。:-)

= select(:email, :status,{ "キャンセル済み" => "キャンセル済み", "保留中" => "保留中", "成功"=>"成功"})

于 2012-08-14T00:09:52.960 に答える