【发布时间】:2014-10-07 09:18:34
【问题描述】:
我的表单中的第一个参数不能包含 nil 或我的表单代码为空问题
我在控制器中定义为
class AdminController < ApplicationController
def new
@dashboard_user = DashboardUser.new
end
def create
@dashboard_user = DashboardUser.new(dashboard_params)
@dashboard_user.save!
end
def user_creation
end
private
def dashboard_params
params.require(:dashboard_user).permit(:user_name, :password, :last_name, :first_name, :middle_name , :phone)
end
end
对于表格
<%= form_for @dashboard_user, url: "/admin/user_creation", method: "post" do |f| %>
但我收到此错误,是否有任何地方我犯了错误或我忽略了一些基本的事情?
P.S 我在提交表单后重定向到同一页面
routes.rb
Rails.application.routes.draw do
resources :admin, :only => [:create, :new] do
post 'user_creation', on: :collection
get 'user_creation', on: :collection
end
end
倾斜路线
Prefix Verb URI Pattern Controller#Action
user_creation_admin_index POST /admin/user_creation(.:format) admin#user_creation
GET /admin/user_creation(.:format) admin#user_creation
admin_index POST /admin(.:format) admin#create
new_admin GET /admin/new(.:format) admin#new
root GET / admin#new
【问题讨论】:
-
下划线。看字符是一项关键的调试技能。
-
@RSB 兄弟你能检查一下吗?
-
如果您“在提交表单后重定向到同一页面”,那么您需要提供更多信息。这个错误是第一次还是第二次?您要重定向到什么具体?相关路线是什么?等等。
-
第一次打开链接时出现这个错误 localhost:3000/admin/user_creation ..
-
为什么
new甚至会使用您提供的路线?运行rake routes——看到问题了吗?另外,看看附加信息对提供可操作的建议有何关键?