Я пытаюсь разбить процесс регистрации своего приложения на куски размером с кусочек.Rails 4 update_attributes с вложенными атрибутами, не сохраняющими
Итак, я отправляю формы через Ajax
и просто пытаюсь обновить некоторые атрибуты моделей, которые были доступны на этом этапе этого процесса, в основном это означает, что они не будут действительны в каждой точке сохранения.
В результате я использовал update_attribute
, который отлично работает. Однако один из моих атрибутов - ассоциация has_many
, и я изо всех сил пытаюсь добиться этого.
У меня есть Channel
модель с has_many :channel_tags
, а также accepts_nested_attributes_for :channel_tags
. Сохранение и обновление отлично работают при использовании метода обновления, но я не могу заставить его работать с update_attribute
или update_attributes
.
Насколько я могу судить, мне нужно использовать update_attributes
. Я хотел сделать что-то вроде:
@channel.update_attributes(channel_tags_attributes: params[:channel][:channel_tags_attributes])
Но это не создает новые channel_tags. Я также попытался с:
@channel.update_attributes(tag_params)
и:
params.require(:channel).permit(channel_tags_attributes: [ :id, :channel_id, :tag_id, :_destroy ]);
Но опять же, это только кажется, не делать ничего.
При проверке с консоли выясняется, что все это происходит потому, что она загружает Channel
для базы данных, а затем в категорию.
Я делаю что-то неправильно или есть лучший способ сделать это?
Вы пробовали @ channel.update_attributes (Params [: канал] [: channel_tags_attributes])? –
Нам нужна дополнительная информация. Можете ли вы показать свою форму и/или параметры, которые публикует форма? –