Я довольно новичок в рельсах. У меня есть следующие моделиЗапрос Rails для моделей, имеющих has_many и принадлежит_от отношения
class Question < ActiveRecord::Base
has_many :options
has_many :response_parts
end
class ResponsePart < ActiveRecord::Base
belongs_to :question
end
Соответствующие каркасы являются
rails g scaffold Question qorder:string qtext:text qtype:string
rails g scaffold ResponsePart answer:string question:belongs_to
Теперь я хочу, чтобы все части ответа, где qtype является «мобильным». Я пробовал несколько способов, но не смог выполнить запрос. Может кто-то сказать способ сделать такой запрос. Заранее спасибо.
Спасибо. Я получаю '#, # ]> 'когда я запрашиваю' ResponsePart.includes (: question) .where (вопросы: {qtype: 'mobile'}) '. Но теперь я хочу получить доступ к соответствующим значениям ответа. Когда я использую 'ResponsePart.includes (: question) .where (вопросы: {qtype:' mobile '}). Каждый и пытаюсь получить доступ к значениям с использованием .answer, он дает ошибку неопределенный метод 'answer'. Я обращаюсь к значениям неправильно? –
Peeyush
Хм, что касается другого вопроса, но мы можем ответить на него здесь. Убедитесь, что вы используете правильную переменную: по вашему мнению, у вас должно быть что-то вроде «ResponsePart.includes (: question) .where (вопросы: {qtype: 'mobile'}). Each do | response_part |' тогда вы должны быть чтобы получить доступ к значению ответа, выполнив 'response_part.answer' в блоке итератора .each. Если вы этого не понимаете, мне нужно знать, что вы используете в своих представлениях: HAML или ERB? Тогда я покажу вам пример – MrYoshiji