2013-12-06 3 views
0

Я пытаюсь показать значение атрибута через его id с помощью formtastic. У меня есть две модели шлема настроены как этот взглядПоказать значение в Active Admin

class Membership < ActiveRecord::Base 
has_many :members 
attr_accessible :membership_type 

end 

class Member < ActiveRecord::Base 
belongs_to :membership 
accepts_nested_attributes_for :membership 
attr_accessible :membership_id, :forename, :middlename, :surname, :house_no, :house_name, :street, :town, :postcode, :home_tel, :mobile_tel, :work_tel, :email 
end 

Мой индекс устанавливается, как это до сих пор

index do 
column :forename 
column :middlename 
column :surname 
column :house_no 
column :house_name 
column :street 
column :town 
column :postcode 
column :home_tel 
column :mobile_tel 
column :work_tel 
column :email 
column :membership 

default_actions 

конец

но значение для членства выводится как

#<Membership:0x007f2c2064c370> 

Как получить фактическое значение, чтобы он сказал «Студент», например

Обычно я хотел бы сделать что-то вроде этого, я думаю

<% @members.each do |m| %> 
<%= m.forname%> 
<%= m.surname%> 

<% m.memberships.each do |s| %> 
<%= s.membership_type%> 


<% end %> 

, но не могу понять это в formtastic

Благодарности

+0

Я вижу, что вы упомянули formtastic, но взгляды, которые вы разделили, относятся к индексу. Что вы хотите достичь с помощью форматического? Любые примеры? –

ответ

1

Попробуйте это:

column 'Membership type' do |member| 
    "#{member.membership.membership_type}".html_safe 
end 
column 'Other members' do |member| 
    member.membership.members.each() do |m| 
     "#{m.forname} #{m.surname}<br/>".html_safe 
    end 
end 
2

ActiveAdmin делает все возможное найти display name для ваших объектов с помощью list of possible attributes:

  • : display_name
  • : full_name
  • : имя
  • : имя пользователя
  • : войти
  • : Название
  • : электронная почта

Чтобы обеспечить объект членства узнаваемое имя во всей системе, вы можете добавить один из t шланг атрибуты, как способ членства:

class Membership < ActiveRecord::Base 
    has_many :members 
    attr_accessible :membership_type 

    def display_name 
    membership_type 
    end 
end 

В качестве альтернативы, вы можете сделать, как Михал Albrycht предлагает и настроить представления для выполнения пользовательского рендеринга для столбца членства.

1

С благодарностью @Cmaresh. Проблема решена. This - ссылка фиксации, где я решил проблему в своем проекте. Любой может видеть исходный код и может легко понять, как решить проблему.

Смежные вопросы