Rails 4 API: создание вложенного ресурса - PullRequest
0 голосов
/ 18 мая 2018

У меня есть 3 модели:

class Repositioning < ActiveRecord::Base
    has_one :repo_mood
    has_one :mood, through: :repo_mood
end

class Mood < ActiveRecord::Base
    has_many :repo_moods
    has_many :repositionings, through: :repo_moods
end

class RepoMood < ActiveRecord::Base
    belongs_to :repositioning
    belongs_to :mood
end

Но у меня есть только Repositionings контроллер.В моем приложении пользователь может добавить mood к repositioning, и данные будут отправлены в мой API как:

repositioning: { mood: mood_id }

Есть ли надежный способ создания необходимой записи repo_mood:

RepoMood.create(repositioning_id: repositioning.id, mood_id: mood_id)

без ручного вызова?Я думаю, как вложенные формы в представлении Rails.

1 Ответ

0 голосов
/ 18 мая 2018

Вам понадобится accepts_nested_attributes_for, чтобы сделать это.

Это позволит вам создавать связанные модели, просто передав соответствующие атрибуты конечной точке API.

...