0
我的應用程序中有表單的simple_form,我一直使用水平包裝,因爲我希望標籤和輸入位於同一級別。即:包裝的簡單形式導致錯誤
<%= simple_form_for @task, html: {class: 'form-horizontal'}, wrapper: :horizontal_input_group do |f| %>
<%= simple_form_for @user, html: {class: 'form-horizontal'}, wrapper: :horizontal_input_group do |f| %>
現在,我已經遇到此錯誤在這個簡單的形式:
<%= simple_form_for ([@task, Response.new]), html: {class: 'form-horizontal'}, wrapper: :horizontal_input_group do |f| %>
的錯誤是:
html.erb:37: syntax error, unexpected keyword_do, expecting keyword_end
er: :horizontal_input_group do |f| @output_buffer.safe_appe...
的期待關鍵字結束沒有意義的事業我在這個simple_form的末尾有<%end%>。如果我刪除此行:
, wrapper: :horizontal_input_group
...它會工作....但我需要它,因爲我希望我的標籤和輸入在同一行上。奇怪的是,它適用於我的其他simple_form for。只有在這種形式不工作時,我添加此代碼:
, html: {class: 'form-horizontal'}, wrapper: :horizontal_input_group
有人可以請幫我/向我解釋爲什麼會發生這種情況。
我認爲括號會混淆解析器,並限制傳遞給方法的參數......試試'<%= simple_form_for(([@ task,Response.new]),html:{class:'form -horizontal'},wrapper::horizontal_input_group)do | f | %>'並且讓我知道這是否有效。 – SteveTurczyn 2015-04-05 09:49:21
我明白了。這就像一個魅力。謝謝你的解釋 – 2015-04-05 10:21:52
太好了。如果您不介意,我會將其作爲答案發布,以便您可以接受。乾杯,史蒂夫 – SteveTurczyn 2015-04-05 13:50:38