【发布时间】:2014-05-29 21:11:28
【问题描述】:
我有一个 Opportunity 模型,它具有 Activity 作为嵌套资源。在我的opportunities/show 页面上,我有一个针对该机会的活动列表和一个添加新活动的表单。当我点击“添加活动”时,我得到:
nil:NilClass 的未定义方法 `activities'
这是错误来源:
# POST /activities.json
def create
@activity = @opportunity.activities.new(activity_params)
if @activity.save
redirect_to @opportunity, notice: 'Activity has been added'
else
我将我的Opportunity 模型定义为具有许多Activities 并且我的活动belongs to 是一个机会。以下是我的Activity 控制器的相关部分:
def create
@activity = @opportunity.activities.new(activity_params)
if @activity.save
redirect_to @opportunity, notice: 'Activity has been added'
else
redirect_to @opportunity, alert: 'Unable to add Activty'
end
end
这是我的观点/活动/新代码
<%= form_for ([@opportunity, @opportunity.activities.new]) do |f| %>
<div class="field">
<%= f.label "Date Assigned" %> <br />
<%= f.text_field :date_assigned %>
</div>
<div class="field">
<%= f.label "Date Due" %> <br />
<%= f.text_field :date_due %>
</div>
<div class="field">
<%= f.label "Description" %> <br />
<%= f.text_field :description %>
</div>
<div class="field">
<%= f.label "Status" %> <br />
<%= f.text_field :status %>
</div>
<div class="actions">
<%= f.submit 'Add' %>
</div>
<% end %>
我的路线:
resources :opportunities do
resources :activities
end
谢谢!!
【问题讨论】:
标签: ruby-on-rails methods undefined