Не совсем ясно, как это было в первый раз, когда я возился с этим. Моя структура таблицы выглядит следующим образом:Laravel 5 Полиморфные отношения
questions
- id
- type_id
multiple_choice_options
- id
- question_id
drag_and_drop_options
- id
- question_id
type_id
поле на questions
таблице определяет, какие параметры таблицы для загрузки с. Таким образом, по существу, я хотел бы установить отношения на Question
модели следующим образом:
class Question extends Model {
public function options() {
// not sure what to return here?
}
}
И для моделей опционных это было бы правильное обратное определение?
class MultipleChoiceOption extends Model {
public function question() {
return $this->belongsTo(Question::class);
}
}
class DragAndDropOptions extends Model {
public function question() {
return $this->belongsTo(Question::class);
}
}
Как настроить это для работы с полиморфными отношениями?
Чтобы быть честным, я надеялся избежать использования переключателя, так как существует около 10 различных типов вопросов. Что касается приложения, я планировал использовать коммутатор в любом случае, чтобы включить различные лезвия для каждого типа вопросов. – thorne51
Закончено с использованием этого решения, кроме как с помощью переключателя – thorne51