我们页面的简单方法是welcome-controller 添加电子邮件-> second_controller 使用电子邮件地址创建一个新对象。
我们有一个显示欢迎页面的欢迎控制器。在此页面上,您可以键入一个电子邮件地址,该地址将提供给其他控制器。我们使用 simple_form 如果我们这样做config.browser_validations = false
并输入“正常”文本,我们会在创建操作时收到错误。在旧版本中,如果没有 simple_form,我们会收到验证错误。如果我们启用它,我们将获得 html5 验证。但是当浏览器不支持 html5 时呢?我们的模型在这里
validates :owner_email,
:presence => true,
:format => { :with => /\A[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]+\z/ },
:on => :create
我们的欢迎视图在这里
<p>
<h2>Create a list without registration.</h2>
<%= simple_form_for([@list], :html => {:class => 'well' }) do |f| %>
<%= f.input :owner_email, :label => false, :placeholder => 'Your Email.' %>
<%= f.button :submit, "Create", :class => "btn-primary" %>
<% end %>
</p>
我们来自第二个控制器的创建动作是这样的
def create
# create a new list and fill it up
# with some default values
@list = List.new(
:title => "List",
:description => "Beschreibung",
:owner_email => "test@domain.com",
:admin_key => generate_admin_key)
@list.update_attributes(params[:list])
respond_with(@list) do |format|
format.html {#
redirect_to :action => "admin", :id => @list.access_key, :status => 301}
end
end
在 html4 版本中收到错误消息,我们需要进行哪些更改?每个人都可以帮助我们吗?