Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 轨道3-Can和x27;t弄清楚Create/updateform子句_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 3 轨道3-Can和x27;t弄清楚Create/updateform子句

Ruby on rails 3 轨道3-Can和x27;t弄清楚Create/updateform子句,ruby-on-rails-3,Ruby On Rails 3,有人能告诉我我做错了什么吗?我正在使用同一页面创建和更新表单,并在页面顶部显示以下代码: 这项工作: <% if @media.blank? %> <%= form_for(:media, :url => {:action => 'create'}) do |f| %> <% end %> {:action=>'create'})do | f |%> 这并不是: <% if @media.blank? %> <%=

有人能告诉我我做错了什么吗?我正在使用同一页面创建和更新表单,并在页面顶部显示以下代码:

这项工作:

<% if @media.blank? %>
  <%= form_for(:media, :url => {:action => 'create'}) do |f| %> 
<% end %>

{:action=>'create'})do | f |%>
这并不是:

<% if @media.blank? %>
  <%= form_for(:media, :url => {:action => 'create'}) do |f| %> 
<% else %>
  <%= form_for(:media, :url => {:action => 'update', :id => @media.id}) do |f| %>
<% end %>

{:action=>'create'})do | f |%>
{:action=>'update',:id=>@media.id})do | f |%>
后者给了我这个结果: 语法错误,意外的关键字_else,应为关键字_end');否则

我应该以不同的方式进行创建和更新吗

谢谢。


<% if @media.blank? %>
  <%= form_for(:media, :url => {:action => 'create'}) do |f| %>
  <% end %> 
<% else %>
  <%= form_for(:media, :url => {:action => 'update', :id => @media.id}) do |f| %>
  <% end %>
<% end %>
{:action=>'create'})do | f |%> {:action=>'update',:id=>@media.id})do | f |%>

{:action=>'create'})do | f |%>
{:action=>'update',:id=>@media.id})do | f |%>

谢谢。这样做的话,我需要两张表格?或者简单地调用一个_form.html.erb页面并包含我想的内容?是的,这样做您将需要两个表单或渲染部分两次,但是您的问题很发人深省,因为
form_for
是一个接受块的方法(
do | f | end
)我也不能确定是否有可能在一个部分中有一个块,或者有一个助手将它传递到
form_for
Hmmm…”。。。我已经习惯了PHP,我想我只需要了解Rails的工作原理。我对部分形式进行了两次渲染。谢谢你的快速回复,我很感激!谢谢这样做的话,我需要两张表格?或者简单地调用一个_form.html.erb页面并包含我想的内容?是的,这样做您将需要两个表单或渲染部分两次,但是您的问题很发人深省,因为
form_for
是一个接受块的方法(
do | f | end
)我也不能确定是否有可能在一个部分中有一个块,或者有一个助手将它传递到
form_for
Hmmm…”。。。我已经习惯了PHP,我想我只需要了解Rails的工作原理。我对部分形式进行了两次渲染。谢谢你的快速回复,我很感激!