2016-07-30 45 views
-1

缺少模板admin/citizens/create,admin/application/create,application/create with {:locale => [:en],:formats => [:html] ,:variants => [],:handlers => [:erb,:builder,:raw,:ruby,:coffee,:haml,:jbuilder,:rabl]}。搜索:*“/ Users/aa/Sites/Active Shehri/activeshehri-mongo/app/views”*“/Users/aa/.rvm/gems/[email protected]/gems/wiselinks-1.2.1/app/views“*”/Users/aa/.rvm/gems/[email protected]/gems/rails_admin-0.6.6/app/views“*”/Users/aa/.rvm/gems/ruby [email protected]/gems/kaminari-0.16.1/app/views“*”/Users/aa/.rvm/gems/[email protected]/gems/devise_invitable-1.5.5/app/views “*”/Users/aa/.rvm/gems/[email protected]/gems/twitter-bootstrap-rails-3.2.2/app/views“*”/Users/aa/.rvm/gems/ruby [email protected]/gems/devise-3.4.1/app/views”创建新用户时出现Missing Template错误

.....这里是代码

= form_for [:admin, @user] do |f| 
    .row 
    .col-lg-6 
     .panel 
     .panel-heading Edit Landmark 
     .panel-body 
      .form-group 
      = f.label :first_name 
      = f.text_field :first_name, class: 'form-control' 
      .form-group 
      = f.label :last_name 
      = f.text_field :last_name, class: 'form-control' 
      .form-group 
      = f.label :email 
      = f.text_field :email, class: 'form-control' 
      .form-group 
      = f.label :gender 
      = f.text_field :gender, :class => 'form-control' 
      .form-group 
      = f.label :contact_no 
      = f.text_field :contact_no, :class => 'form-control' 
      .form-group 
      = f.label :address 
      = f.text_field :address, class: 'form-control' 
     = f.submit 'Save', class: 'btn btn-primary btn-submit btn-lg pull-right' 
     = link_to "Back", admin_home_user_panel_path, class: 'btn btn-primary btn-submit btn-lg pull-left' 
+0

使用redirect_to或呈现on ce对象保存在您的创建操作中。因为您没有create.html.erb –

+0

您确定您的app/views/admin/citizen文件夹中有create.html –

+0

已使用redirect_to admin_home_user_panel_path –

回答

0

我认为你需要添加其他部分来处理用户不保存时

def create 
    @user = User.new(new_params) 
    if @user.save 
    redirect_to admin_home_user_panel_path 
    else 
    #do render or redirect_to 
    end 
end 
+0

是的,当我把代码中的其他部分重定向到新页面。但它创建我的用户为什么不保存它?为什么@ user.save不工作? –

+0

可能是你有一些验证错误。在其他部分使用渲染。所以缺少模板错误现在不见了 –

0

的错误是因为... e您的views/admin/citizens文件夹中没有名为create.html.erb的文件。

在Rails中,如果你不告诉它重定向或渲染在控制器方法的最后一个特定的模板,它推断出一个模板来渲染代替,因此:

class UsersController < ApplicationController 
    def create 
    @user = User.create(name: params[:name]) 
    end 
end 

如果create方法在这里运行,用户将被创建,然后Rails将尝试渲染模板views/users/create.html.erb。通常情况下,你会不会有一个同名的模板 - 你可能会做这样的事情:

class UsersController < ApplicationController 
    def create 
    @user = User.create(name: params[:name]) 
    redirect_to user_path(@user) 
    end 
end 

或者:

class UsersController < ApplicationController 
    def create 
    @user = User.create(name: params[:name]) 
    render :awesome_template 
end 

这一切都在这里: http://guides.rubyonrails.org/v2.3.11/action_controller_overview.html#methods-and-actions

相关问题