我想后台和前台公用一个 model,但是在后台的 view 中如果写
form_for @user 那么会提示找不到。 如果把 model 目录中的 user 拷贝到 admin/model/中,并且改为 class Admin::User....
就行,我不想要 admin/model,只保留前台的 model,该如何做呢?
form_for @user,如果 @user 是 User,应该就是用 users_path 阿。
把错误输出看看
我用的办法略显麻烦,还没发现刚好的办法....后台加 namespace:
form_for [:admin, @user]
@cqpx 后台肯定是加了 namespace 的,我是想后台用前台的 model,这样后台就不用再单独创建 model 了..
@Rei @user的确是前台的 model User,但是 form_for @user 却提示找不到,必须把这个 User 拷贝到后台才行
#3 楼 @d4rkl0rd 我平时就是这么操作的啊 form_for @user的路径会用user_path(@user),但是后台的路径应该用admin_user_path(@user)。 如果你没给前台的 user show 加路径的话,user_path(@user)就会出错。 form_for [:admin, @user]就会用admin_user_path(@user)
form_for @user
user_path(@user)
admin_user_path(@user)
@cqpx 什么 user show? NND 再去试试..
先确认下”那么会提示找不到“是找不到什么……把错误输出
model 怎么会要两个?你说得是 controller 吧? @cqpx 给你得解是让你去不同得 controller... 这个和 model 没有关系...
#4 楼 @cqpx <%= form_for([:admin, @user]) do |f| %>这方法管用
<%= form_for([:admin, @user]) do |f| %>