[英]Sending information from view into controller rails
我堆积了。 这是事件的表单视图:
<%= form_for(@event) do |f| %>
<div class="form-group">
<%= f.radio_button :repeat, 'once', checked: true%><br>
<%= f.label :repeat_once, 'once'%><br>
<%= f.radio_button :repeat, 'daily'%><br>
<%=f.label :repeat_daily, 'daily'%><br>
<%= f.radio_button :repeat, 'weekly'%><br>
<%= f.label :repeat_weekly, 'weekly'%><br>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
我在控制器中有方法
def create
@event = Event.new(event_params)
@event.user_id = current_user.id
@event.save
if @event.repeat = 'daily'
////
end
if @event.repeat = 'weekly'
//////////
end
redirect_to events_url
//// it's doesn't matter what inside if block
还有我的迁移:
def change
add_column :events, :repeat , :string
end
问题出在if块中,因为无论我在视图中的选择如何,所有内容每次都为true(例如,我每周选择一次,但无论如何,应用都会每天一次),代码有什么问题吗? 感谢您的阅读:)等待任何想法
您应该在if
语句中使用双等于==
。 否则,您要为@event.repeat
分配“每日”,而不检查它是否已设置为“每日”。
if @event.repeat == 'daily'
我认为你应该使用
if @event.repeat == 'daily'
////
end
instead of
if @event.repeat = 'daily'
////
end
@ event.repeat ='daily'分配'daily'字符串以重复不检查它使用@ event.repeat =='daily'如果条件也相同
显然,字符串始终是真实的。
您的属性应为布尔值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.