2014-10-09 3 views
0

У меня есть класс с именем TemplateResources, который имеет два метода, как это:Ruby: объединить результаты двух методов из класса

def components 
    @template.components 
end 

def custom_articles 
    components += @user.custom_articles if @user.custom_articles.present? 
end 

Результаты называются в представлении, как так:

<% @template_resources.components.each do |article| %> 

Я хочу объединенный результаты отображаются в виде. Я думал, что += сделает это, но это не похоже. Кто-нибудь знает, как присоединиться к результатам этих двух методов?

+0

Можете ли вы описать модели отношений между шаблонов, пользователь, custom_articles и компонентов. Это помогает понять и ответить на вопрос соответственно. – kapiltekwani

ответ

4

Возможно:

def components 
    @template.components 
end 

def custom_articles 
    @user.custom_articles || [] 
end 

def all_articles 
    components + custom_articles 
end 

И чем в представлении:

<% @template_resources.all_articles.each do |article| %> 
+0

Далеко, это просто. Благодаря! –

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