使用表单标记的正确方法是什么,当我包含结尾时,我收到编译错误。当我把它拿出来有效时,我应该用HTML手动结束表单吗?或者我的语法有问题吗?
<html>
<head>
<title>
Databse connections
</title>
</head>
<body>
<%= form_tag ( :action => 'create' )%>
<%= text_field(:album, :title) %>
<%= text_field(:album, :artist) %>
<%= text_field(:album, :genre) %>
<%= datetime_select(:album, :release_date) %>
<%= submit_tag("Create") %>
<% end %>
</body>
</html>
答案 0 :(得分:3)
如果你使用form_tag
没有阻止,它只会创建开始标记。如果您要创建这两个标记,则需要将其传递给您似乎正在尝试执行的操作,但在do
之后您遗漏了form_tag(...)
关键字:
<% form_tag ( :action => 'create' ) do %>
<%= text_field(:album, :title) %>
<%= text_field(:album, :artist) %>
<%= text_field(:album, :genre) %>
<%= datetime_select(:album, :release_date) %>
<%= submit_tag("Create") %>
<% end %>
如果没有do
启动阻止,则end
是语法错误。如果没有当前语法中的end
,则不指定字段在表单中(但它们最终会成为表单的一部分,因为您没有关闭由块创建的表单标记 - 在指定之前少form_tag
。