所以一个用户有很多大学(他们就读过),一个大学属于一个用户。我将这些学院称为college_profile,因为它们是用户个人资料的学院属性。
我在尝试创建一所新学院时遇到了问题。我现在的大学控制器非常简单:
def new
@user = User.find(params[:id])
@college = current_user.college_profile.build if signed_in?
end
视图同样简单:(views/college_profiles/new.html.erb)
<%= form_for [@user, @college] do |f| %>
<%= render 'shared/error_messages', object: f.object %>
<%= f.label :name %>
<% end %>
然而,由于某种原因,我收到以下错误:
NoMethodError in College_profiles#new
Showing .../app/views/college_profiles/new.html.erb where line #4 raised:
undefined method `user_college_profiles_path' for #<#<Class:0x5bf1b68>:0x673aef8>
由于我还在学习 Rails,我什至不明白这个错误到底指的是什么。相当多的谷歌搜索让我没有运气,或者如果答案就在那里,我根本就没有意识到我在看它。任何帮助将不胜感激!
如果它是相关的,当我们谈论路径时,这是我的路线文件的摘录:
resources :users, :only => [:index, :new, :create, :destroy, :update, :edit] do
resources :college_profiles, :only => [:new, :create]
end
如果需要更多信息,请告诉我。谢谢!