2013-08-07 5 views
14

यह मेरा कोड है:कैसे f.select रेल चयनित बनाने के लिए

<%= f.select :area, options_for_select([['a','a'],['b','b'],['c','c']]), {}, {:class => 'span3 controls controls-row'}, :selected => params[:area] %> 

और परिणाम है:

ArgumentError in Users#edit 
Showing /home/airson/rails_projects/friends_of_local/app/views/users/edit.html.erb where line #17 raised: 
wrong number of arguments (5 for 4) 

क्यों ..... @@?

+0

क्या आप संपूर्ण edit.html.erb टेम्पलेट पेस्ट कर सकते हैं? –

उत्तर

24

:selected उपयोग करने के लिए कोई ज़रूरत नहीं बस पारित अपने params[:area] अकेले एक दूसरे तर्क के रूप में options_for_select रहे हैं:

<%= f.select :area, 
    options_for_select([['a','a'],['b','b'],['c','c']], params[:area]), 
    {}, { :class => 'span3 controls controls-row' } %> 

अंतिम मान आपके params[:area] का चयन किया जाएगा।

उम्मीद है कि यह मदद करता है;)

9

आप :selected विकल्प को options_for_select विधि पास करना चाहिए इस तरह:

<%= f.select :area, options_for_select([['a','a'],['b','b'],['c','c']], :selected => params[:area]), {}, { :class => 'span3 controls controls-row' } %> 
संबंधित मुद्दे