错误要在我的地址簿应用程序管理错误我初始化这样阵在西纳特拉
err = Array.new
一个数组,然后当我张贴的东西它会检查是否有空白字段。如果是的话,每个空字段它增加了阵列中的记录,然后重定向到/添加页面,这样
post '/' do
if params[:fname] == ""
err.push "Insert a valid first name"
end
if params[:lname] == ""
err.push "insert a valid last name"
end
if params[:phone] == ""
err.push "insert a valid phone number"
end
if params[:mail] == ""
err.push "insert a valid e-mail address"
end
if err.empty?
c = Contatto.new
c.fname = params[:fname]
c.lname = params[:lname]
c.phone = params[:phone]
c.mail = params[:mail]
c.save
redirect '/'
else
redirect '/add'
end
end
然后添加页面读取,如果数组有任何记录,如果是,周期它打印每个消息
get '/add' do
@err = err
@title = 'Aggiungi'
erb :aggiungi
end
<% if @err.any? %>
<div class="error">
<% @err.each do |err| %>
<%= err %><br>
<% end %>
</div>
<% end %>
我认为错误是,它的每一个从后“/”得到“/添加”发生变化,所以结果是空数组... 如何时都将重新初始化数组我能解决吗?谢谢大家!
非常感谢!第二次提交表格后如何清除会话? –
'session.clear'或'session [:errors] .clear'应该可以工作,具体取决于您是要清除所有会话数据还是仅清除错误。 –
谢谢!我尝试着 ! –