ruby-on-rails - Belongs_to 无法正常工作

标签 ruby-on-rails ruby ruby-on-rails-4.1

我有这个问题: enter image description here

我有这段代码:

用户.rb:

class User < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :confirmable, :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable  

  def full_name 
    "lalalala"
  end
end

状态.rb:

class Status < ActiveRecord::Base

    belongs_to :user
end

显示.html.erb:

<p id="notice"><%= notice %></p>

<p>
  <strong>Name:</strong>
  <%= @status.user.full_name %>
</p>

<p>
  <strong>Content:</strong>
  <%= @status.content %>
</p>

<%= link_to 'Edit', edit_status_path(@status) %> |
<%= link_to 'Back', statuses_path %>

我在这里错过了什么?我无法访问 full_name 方法,但我不知道为什么。我是 Ruby-on-Rails 的新手,所以它一定是一些我不理解的简单细节。 rails 版本:4.1.5; ruby 版本:2.1.2

最佳答案

您的错误消息中包含您需要的所有内容。您的 Status 记录没有关联的 User 记录,因此 @status.user 返回 nil

关于ruby-on-rails - Belongs_to 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25782810/

相关文章:

ruby-on-rails - 参数缺失或值为空 hidden_​​field_tag

ruby-on-rails - Ruby on Rails 3 .each 做问题

ruby - 使用交互式 Ruby 程序,在我输入内容时关闭

mysql - 多个 Rails 引擎与一个 MySQL 服务器通信,用于水平扩展应用程序服务器

javascript - 不对某些 Assets 进行预编译 - Rails

postgresql - 如何覆盖 heroku 的 database.yml 中的 pool 和 reaping_frequency

ruby - 参数[:search] error after updating to Rails 4. 1

mysql - 添加索引 Ruby on Rails 4.1.4 迁移

javascript - 使用 Carrierwave 附加 Canvas 图像以形成并上传

ruby-on-rails - 命名范围 - 绑定(bind)变量的数量错误