-1

Мои модели:сфера не работает в отношениях

class House 
belongs_to: country 
scope :published, -> { where(published: true) } 
end 

class Country 
has_many: houses 
end 

Я хочу, чтобы показать дома, которые опубликованы и из страны Х;

house_controller: 

@country = Country.friendly.find(params[:country_id]) 
@houses = @country.houses.published.order(:sorting) 

Я получаю ошибку "неопределенный метод` опубликовал"

Что я делаю неправильно?

+0

На консоли, вы можете успешно сделать 'House.published'? –

+0

И если '@ country' -' nil', я готов поспорить, что вы получите «неопределенный метод», опубликованный «для NilClass» или что-то в этом роде, что сделало бы общий смысл. Является ли '@ country' ноль? –

+0

ваши модели не выглядят хорошо Я не могу видеть 'ActiveRecord :: Base' Пожалуйста, правильно разместите его –

ответ

2

Вы можете использоваться опубликовывается область видимости, следующее:

House.where(country_id: @country.id).published.order(:sorting) 
+0

спасибо! .... ты много меня спас – Remco