Ruby on rails 铁路协会

Ruby on rails 铁路协会,ruby-on-rails,devise,Ruby On Rails,Devise,我的数据库中有一个带有载波的Desive用户表和一个avatar列。运行该网站时,会显示“未定义的方法”“化身” <% @posts.each do |post| %> <div class="col-xs-12 col-md-6 col-lg-4 item" > <div class="timeline-block"> <div class="panel panel-default">

我的数据库中有一个带有载波的Desive用户表和一个avatar列。运行该网站时,会显示“未定义的方法”“化身”

<% @posts.each do |post| %>
      <div class="col-xs-12 col-md-6 col-lg-4 item" >
        <div class="timeline-block">
          <div class="panel panel-default">
            <div class="panel-heading">
              <div class="media">
                <div class="media-left">
                  <a href="">
                    <%= image_tag post.user.avatar.url, class: 'media-object' %>
                    <img src="http://placehold.it/50x50" class="media-object">
                  </a>
                </div>
                <div class="media-body">
                  <a href="#" class="pull-right text-muted"><i class="icon-reply-all-fill fa fa-2x "></i></a>
                  <a href=""><%= name post %></a>
                  <span><%= (post.created_at).to_formatted_s(:short) %></span>
                </div>
              </div>
            </div>

            <div class="panel-body">
              <p><%= post.user_post %></p>
            </div>

            <div class="view-all-comments">
              <a href="#">
                <i class="fa fa-comments-o"></i> View all
              </a>
              <span>10 comments</span>
            </div>
          </div>
        </div>
      </div>
  <% end %>

10条评论
模型

class用户

我不知道发生了什么事。在其他应用程序中,我使关联生效。

您的
用户
模型中有两次
装载上传程序

另外,您是否运行了以下代码

rails g migration add_avatar_to_users avatar:string
rake db:migrate
在活动记录模型上出现“undefined method”错误的正常原因是DB列不存在,因此我怀疑这就是问题所在

如果没有,请发布屏幕上显示的准确错误消息和堆栈跟踪,以及迁移文件的内容和
AvatarUploader

编辑:

模型中缺少活动记录关联:

class User < ApplicationRecord
  has_many :posts
end

class Post < ApplicationRecord
  belongs_to :user
end
class用户
您的
用户
型号中有两个
装载上传器

另外,您是否运行了以下代码

rails g migration add_avatar_to_users avatar:string
rake db:migrate
在活动记录模型上出现“undefined method”错误的正常原因是DB列不存在,因此我怀疑这就是问题所在

如果没有,请发布屏幕上显示的准确错误消息和堆栈跟踪,以及迁移文件的内容和
AvatarUploader

编辑:

模型中缺少活动记录关联:

class User < ApplicationRecord
  has_many :posts
end

class Post < ApplicationRecord
  belongs_to :user
end
class用户
你能给我们看一下
用户
模型的代码吗?是的,我已经把用户模型放在问题上了。你重新启动了应用程序服务器吗?你的问题没有足够的信息来解决问题。请提供相关信息,例如,
用户
型号的代码。是的,我提供了,但前后它仍然给我相同的错误。您可以向我们展示
用户
型号的代码吗?是的,我已将用户型号放在问题上。您是否重新启动了应用程序服务器?您的问题没有足够的信息来解决问题。请提供相关信息,例如,
用户
型号代码。是的,我提供了,但在该列确定之前和之后,它仍然给我相同的错误。
AvatarUploader
中有什么?AvatarUploader是从载波生成的类。我认为这是post.user的问题。我可以访问post.user\u id变量,但不能访问任何post.user。请参阅更新后的答案:您缺少活动记录关联该列已确定。
AvatarUploader
中有什么?AvatarUploader是从载波生成的类。我认为这是post.user的问题。我可以访问post.user_id变量,但不能访问任何post.user。请参阅更新的答案:您缺少活动记录关联