Шаблон отсутствует: отсутствует макеты шаблонов / сайт с {: locale => [: en],: format => [: html],: варианты => [], - PullRequest
0 голосов
/ 07 октября 2019

Когда я пытался зайти на страницу регистрации моего сайта rails, это показывалось так:

Отсутствует шаблон

Отсутствует макеты шаблонов / сайт с {: locale =>[: en],: format => [: html],: варианты => [],: обработчики => [: raw,: erb,: html,: builder,: ruby,: jbuilder]}. Поиск в: * "C: / Users / Vanessa / rails_space / app / views" * "C: /Ruby26-x64/lib/ruby/gems/2.6.0/gems/actiontext-6.0.0/app/views" *"C: /Ruby26-x64/lib/ruby/gems/2.6.0/gems/actionmailbox-6.0.0/app/views"

Вот мое приложение / views / layouts / application. html.erb file:

  <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
  <head>
    <title><%= @title %></title>
   <%= stylesheet_link_tag "site" %>
  </head>
 <body>

  <div id="whole_page">

 <div id="header">RailsSpace</div>
 <div id="nav">

  <%= link_to_unless_current "Home", :action => "index" %> |
  <%= link_to_unless_current "About Us" , :action => "about" %> |
  <%= link_to_unless_current "Help", :action => "help" %>

    </div>
    <div id="content">
   <%= yield %>
      </div>
     </div>
   </body>
  </html>

Вот мой файл user_controller.rb:

class UserController < ApplicationController
   layout "site"

    def index
     end

  def register
   @title = "Register"
     end
   end

Вот мой файл app / views / user / register.html.erb:

<h2>Register</h2>
<%= form_for :user do |form| %>
  <fieldset>
  <legend>Enter Your Details</legend>
  <div class="form_row">
  <label for="screen_name">Screen name:</label>
  <%= form.text_field :screen_name %>
</div>

<div class="form_row">
<label for="email">Email:</label>
<%= form.text_field :email %>
</div>

<div class="form_row">
 <label for="password">Password:</label>
 <%= form.password_field :password %>
</div>
<div class="form_row">
<%= submit_tag "Register!", :class => "submit" %>
</div>
 </fieldset>
<% end %>

Понятия не имею, почему это показывает. Кто-нибудь, пожалуйста, помогите. Спасибо всем заранее.

Ответы [ 2 ]

0 голосов
/ 08 октября 2019

В вашем файле user_controller.rb вы указываете, что хотите использовать файл макета site. Чтобы это работало, у вас должен быть файл в каталоге раскладок с именем site.html.erb (или что-то похожее на это, если вы используете что-то отличное от erb в качестве языка шаблонов). Он должен находиться в том же каталоге, что и ваш файл application.html.erb. Ваша ошибка говорит о том, что вы пропустили этот файл.

Другой вариант - закомментировать или удалить строку layout "site" и перейти к файлу макета по умолчанию, который application.html.erb.

.
0 голосов
/ 07 октября 2019

Скорее всего, вы не предоставляете шаблон для рендеринга при нажатии на ваше действие. Например: если ваш контроллер registrations_controller и ваше действие register_user, то в вашем каталоге /app/views/registrations/ должно быть register_user.html.erb.

Если это не поможет, вы можете указатьчасть вашего кода, чтобы лучше понять проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...