2015-03-21 2 views
0

Я использую простое наследование таблицы с Laravel (используя плагин, например Nanigans/single-table-inheritance или intrip/laravel-single-table-inheritance, но я также могу реализовать свою собственную, которая это не проблема).Наследование и синхронизация одиночной таблицы Laravel

Я также пользуюсь собственными отношениями: в книге может быть много слов, а слово может быть во многих книгах.

Представьте себе, что у меня есть что-то вроде:

Book { 
    verbs() { belongsToMany ('Verb',...) } 
    adjectives() { belongsToMany ('Adjective',...) } 
} 

А также изображений, что «глагол» и «прилагательное» делит таблицу «слова» с другим полем «типа» и расширением модели «Слово».

Проблема заключается в том, что я использую sync() (например, $ book-> verbs() -> sync ([1,2,3])) также очищает отношения прилагательных, когда это не должно.

Знаете ли вы какое-либо решение?

ответ

0

Я бы выбрал все глаголы книги. Отсоедините их от него и прикрепите новые глаголы к входной форме :)

+0

Спасибо за ваш комментарий. У меня тоже есть это, но я искал другое «элегантное» решение. Во всяком случае, если я не смогу найти что-либо, я буду так поступать. – kanashin

Смежные вопросы