Ruby on rails “希罗库”;出了点问题。”;尝试创建新窗体时

Ruby on rails “希罗库”;出了点问题。”;尝试创建新窗体时,ruby-on-rails,ruby,forms,ruby-on-rails-4,heroku,Ruby On Rails,Ruby,Forms,Ruby On Rails 4,Heroku,我正在尝试创建一个新的“房间”窗体。然而,当我把它推给Heroku时,我得到了一个错误:“很抱歉,出了点问题。”我使用的是rails 4.1和ruby 2.1.1。我也在使用Heroku 如果有帮助的话,我对rails有点陌生,正在尝试将我学到的东西移植到我的新“房间”类型中 这是我的视图/模型/控制器: 查看:(app/views/rooms/index.html.erb) 创造空间 {:controller=>'rooms',:action=>'create'})do | f |%> 创建

我正在尝试创建一个新的“房间”窗体。然而,当我把它推给Heroku时,我得到了一个错误:“很抱歉,出了点问题。”我使用的是rails 4.1和ruby 2.1.1。我也在使用Heroku

如果有帮助的话,我对rails有点陌生,正在尝试将我学到的东西移植到我的新“房间”类型中

这是我的视图/模型/控制器:

查看:(app/views/rooms/index.html.erb)


创造空间
{:controller=>'rooms',:action=>'create'})do | f |%>
创建人:

名称:

说明:

  • *
所有房间 房间是空的
型号:(app/Model/room.rb)

教室类它在您自己的计算机上工作吗?我之前在本地主机上运行时遇到问题,但忘了我已经解决了这个问题。养成了把一切都推给heroku的坏习惯。我在本地主机上运行时编辑了我的帖子。似乎认为@房间为零。我不确定为什么在我遵循的教程中它100%起作用,但在本教程中不起作用……嗯,@room可能为零。你要采取什么行动?此外,你不应该对不同的动作使用相同的视图。哦,明白了。我在index.html.erb中,需要切换到new.html.erb。非常感谢。
<% if current_user %>
  <h1>Create Room</h1>
  <div class="Sign_Form">
    <%= form_for(:room, :url => {:controller => 'rooms', :action => 'create'}) do |f| %>
      <p> Created By:</br> <%= f.text_field :created_by%> </p>
      <p> Name:</br> <%= f.text_field :name%> </p>
      <p> Description:</br> <%= f.text_field :description%> </p>
      <%= f.submit :Createroom %>
    <% end %>
    <% if @room.errors.any? %>
      <ul class="Createroom_Errors">
        <% for message_error in @room.errors.full_messages %>
          <li>* <%= message_error %></li>
        <% end %>
      </ul>
    <% end %>
  </div>

  <h1>All Rooms</h1>
  <% if @rooms.nil? %>
    Rooms is nil
  <% else %>
    <% @rooms.each do |room| %>
      <%= room.name %>
    <% end %>
  <% end %>
<% else %>
  <%= render 'welcome' %>
<% end %>
class Room < ActiveRecord::Base
  class << self
  end
end
class RoomsController < ApplicationController
  def index
    @rooms = Room.all
  end

  def new
    @room = Room.new
  end

  def create
    @room = Room.new(params[:room])
    if @room.save
      flash[:notice] = "Room has been created!"
      flash[:color] = "valid"
    else
      flash[:notice] = "Room has not been created!"
      flash[:color] = "invalid"
    end
    render new
  end
end