Вот мой вопрос. У меня есть 2 связанных DataMapper модели:Создайте JSON из 2 связанных моделей Datamapper
class Task
include DataMapper::Resource
property :id, Serial
property :date, Date
property :amount, Float
belongs_to :project, :required => true
end
class Project
include DataMapper::Resource
property :id, Serial
property :name, String, :required => true
property :desc, Text
belongs_to :company
has n, :tasks
end
Моя цель состоит в том, чтобы созданный JSON, который будет содержать дату задачи, количество и название проекта, которое должно сопровождаться PROJECT_ID. На данный момент генерации JSON имеет следующий вид:
Task.all.to_json(:only => [:date, :amount, :project_id])
я могу получить доступ к PROJECT_ID из модели задач, но не имею ни малейшего представления о том, как добавить соответствующее название проекта из модели проекта для каждой задачи. В SQL это выглядит как присоединиться:
select tasks.date, tasks.amount, projects.name from tasks
inner join projects
on tasks.project_id = projects.id;
Может ли вы предложить правильный способ создания окончательного JSON, используя DataMapper пути, но не SQL?
спасибо.