【发布时间】:2020-02-20 00:08:55
【问题描述】:
我创建了一个简单的表单,用户单击三个项目并按提交,然后正在发送一封电子邮件,所有这些都有效。但是,当我测试它并检查显示页面时,它没有显示用户选择的任何输入详细信息,只是一个空白页面。我没有收到任何错误。
控制器
class PositionsController < ApplicationController
def new
@position = Position.new
end
def show
@position = Position.find(params[:id])
end
def create
@position = Position.new(position_params)
if @position.save
PositionMailer.general_message(@position).deliver
else
render :new
end
end
private def position_params
params.permit(:date, :time, :activity)
end
end
查看
<div class="form">
<%= simple_form_for @position do |f| %>
<div class= "trip">
<div class="trip-text">
Trip number
</div>
<div class="trip-field">
<%= f.input :tripnumber, label: false, placeholder: 'enter here' %>
</div>
</div>
<div class= "activity">
<div class="activity-text">
Activity
</div>
<div class="activity-field">
<%= f.input :activity, label: false, collection: [['Sailing to loadport, expected arrival', 'Sailing to loadport, expected arrival'], ['Sailing to discharge port, expected arrival', 'Sailing to discharge port, expected arrival'],
['Loading untill', 'Loading untill'], ['Discharging untill', 'Discharging untill'], ['Waiting for loading, expect to start', 'Waiting for loading, expect to start'], ['Waiting for discharge, expect to start', 'Waiting for discharge, expect to start']] %>
</div>
</div>
<div class="date">
<div class="date-text">
Date
</div>
<div class="date-field">
<%= f.date_field :date, class: 'form-control' %>
</div>
</div>
<div class="time">
<div class="time-text">
Time
</div>
<div class="time-field">
<%= f.time_field :time, value: "%H:%M", min: 'hh:mm:ss', max: 'hh:mm:ss' %>
</div>
</div>
<%= f.submit "Send update", class: "submit"%>
</div>
由于我没有错误并且一切正常,除了我没有用户的输入我不知道在哪里看,我在论坛和谷歌上查看但没有成功
【问题讨论】:
-
我现在添加了一个重定向,但仍然是一个没有错误消息的空白表
-
是的,我叫save!
-
这是我的显示视图:
-
调用 PositionMailer 后,您什么也没有做。你应该去显示或索引。例如,format.html { redirect_to :Action => 'index' } 应该在主列表中显示添加的项目。
-
我在控制器中添加了一个重定向到显示页面,但没有任何变化,它将我重定向到一个空的显示页面:(
标签: ruby-on-rails submit simple-form