【发布时间】:2014-12-17 05:44:32
【问题描述】:
在创建 user_profile 后,当我想重定向以显示操作时,我的路线出现错误。
控制器
class UserProfilesController < ApplicationController
def create
@user = User.find(current_user.id)
@profile = UserProfile.find_by_user_id(@user)
if @user_profile = @user.create_user_profile(user_params)
redirect_to user_user_profile_url(@user,@profile)
end
end
def show
@user_profile = @user.user_profile
end
private
def user_params
params.require(:user_profile).permit(:firstname, :lastname, :birthdate, :street_address, :city_address, :country, :contact_number, :avatar)
end
end
routes.rb
resources :users do
resources :user_profiles
end
谢谢!
【问题讨论】:
-
您是如何尝试解决框架给您的错误的?
-
你能发布这个错误的堆栈跟踪吗?
-
ActionController::UrlGenerationError (没有路由匹配 {:action=>"show", :controller=>"user_profiles", :id=>nil, :user_id=>"2"} 缺少必需的键: [:id]): app/controllers/user_profiles_controller.rb:13:in `create' -- 这是你要找的堆栈跟踪吗?
-
是的先生,我尝试了很多选项..在我以前的控制器中我成功地重定向了它,但在这里我不知道为什么。
标签: ruby-on-rails ruby ruby-on-rails-4 routes