【问题标题】:Rails Won't Render My ViewRails 不会渲染我的视图
【发布时间】:2016-04-21 11:59:25
【问题描述】:

我正在使用自定义视图运行设计,我的 login 页面之前完美呈现,但我只是将模型的名称从 human 更改为 user,重命名了控制器和视图,但它只是拒绝呈现我的视图。

我没有收到错误,我的布局完美呈现,但由于某种原因它没有产生正文。

代码

这是我的routes.rb Users

  ## devise controllers for users
  devise_for :user, controllers: {
    confirmations: 'user/confirmations',
    passwords: 'user/passwords',
    registrations: 'user/registrations',
    sessions: 'user/sessions',
    unlocks: 'user/unlocks',
    # commenting the below because omniauth gem isn't installed
    # omniauth_callbacks: 'user/omniauth_callbacks'
  }, skip: [:sessions]
  ## custom routes for users
  as :user do
    get 'login' => 'user/sessions#new', :as => :new_user_session
    post 'login' => 'user/sessions#create', :as => :user_session
    delete 'logout' => 'user/sessions#destroy', :as => :destroy_user_session
    get 'register' => 'user/registrations#new', as: :register
  end

这是我的 sessions_controller 由 devise 生成的:

class User::SessionsController < Devise::SessionsController
  ...

  # GET /resource/sign_in
  def new
    super
  end
  ...
end

这是我的观点:

<%= render layout: 'layouts/shared/left_logo_panel' do %>
  <%= form_for(resource, html: {class: 'form'}, as: resource_name, url: session_path(resource_name)) do |f| %>
    <div class="field form-group">
      <%= f.label :email %><br />
      <%= f.email_field :email, class:'form-control', autofocus: true %>
    </div>

    <div class="field form-group">
      <%= f.label :password %><br />
      <%= f.password_field :password, class:'form-control', autocomplete: "off" %>
    </div>

    <% if devise_mapping.rememberable? -%>
      <div class="field form-group">
        <%= f.check_box :remember_me %>
        <%= f.label :remember_me %>
      </div>
    <% end -%>

    <div class="actions">
      <%= f.submit "Log in", class:'btn btn-default' %>
    </div>
  <% end %>

<%= render "devise/shared/links" %>
<% end %>

日志

Started GET "/login" for 127.0.0.1 at 2016-04-21 04:48:13 -0700
Processing by User::SessionsController#new as HTML
  Rendered devise/shared/_links.html.erb (5.8ms)
  Rendered layouts/shared/_left_logo_panel.html.erb (9.4ms)
  Rendered user/sessions/new.html.erb within layouts/application (9.8ms)
  Rendered layouts/_shim.html.erb (0.0ms)
  Rendered layouts/_header.html.erb (0.3ms)
  Rendered layouts/_footer.html.erb (0.0ms)
  Rendered layouts/_ga.html.erb (0.1ms)
Completed 200 OK in 41ms (Views: 39.7ms | ActiveRecord: 0.0ms)

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 devise


    【解决方案1】:

    在我的布局中,我将yieldyield :body 交换了,然后忘记了。好吧,我是个傻瓜。伙计们,检查你的布局!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-26
      相关资源
      最近更新 更多