Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails从管理部分的另一个表中获取字段_Ruby On Rails_Ruby_Model - Fatal编程技术网

Ruby on rails Rails从管理部分的另一个表中获取字段

Ruby on rails Rails从管理部分的另一个表中获取字段,ruby-on-rails,ruby,model,Ruby On Rails,Ruby,Model,在我的应用程序中,我有管理子文件夹、控制器和方法: class Admin::UserGroupsController < ApplicationController def index @pre_usergroups = UserGroup.all @user_groups = Kaminari.paginate_array(@pre_usergroups).page(params[:page]).per(50) render :layout => 'a

在我的应用程序中,我有管理子文件夹、控制器和方法:

class Admin::UserGroupsController < ApplicationController
  def index
    @pre_usergroups = UserGroup.all
    @user_groups = Kaminari.paginate_array(@pre_usergroups).page(params[:page]).per(50)
    render :layout => 'admin'
  end
end
和模型(不在admin子目录中):

但是为什么我会

 undefined local variable or method `group_id' for #<#<Class:0xb352734>:0xab437dc>
未定义的局部变量或方法“group_id”#
所以我没有去模型中的方法。。。
如何访问模型方法?

如错误
中所述,未定义组id
,这是正确的。 你应该这样称呼它:

=u.get\u group\u name(u.group\u id)

因为
group\u id
UserGroup
对象的属性


但是,我不明白你为什么要使用
get\u group\u name
get\u user\u name
方法,为什么不直接使用
u.group.name
u.user.email

哈哈哈,哈哈哈。。。。真的,我怎么能忘记呢。。。。不睡2个晚上是不好的主意。谢谢你,很抱歉,这样的问题,欢迎你,请考虑直接使用协会作为我增加的答案。我现在不知道它们,所以我决定硬编码方法一段时间,也许你们可以给出一些简短的建议,为什么在管理部分我没有看到验证器的工作,很快,就不打开新的问题了?
class UserGroup < ActiveRecord::Base
  attr_accessible :group_id, :user_id
  belongs_to :group
  belongs_to :user
  validates :user_id, :presence => {:message =>  I18n.t(:user_not_chosen)}
  validates :group_id, :presence => {:message =>  I18n.t(:group_not_chosen)}


  def get_group_name(id)
    @gr = Group.find(id)
    @gr.name
  end

  def get_user_name(id)
    @user = User.find(id)
    @user.email
  end
end
%table.table.table-striped
  %tr
    %th
      Название группы:
    %th
      Пользователь:  
  -@user_groups.each do |u|
    %tr  
      %td
        = u.get_group_name(group_id)
      %td
        = u.user_id
 undefined local variable or method `group_id' for #<#<Class:0xb352734>:0xab437dc>