Создание модели с двумя необязательными, но одним обязательным внешним ключом

Моя проблема в том, что у меня есть модель, которая может взять один из двух внешних ключей, чтобы сказать, что это за модель. Я хочу, чтобы это заняло хотя бы один, но не оба. Могу ли я иметь это по-прежнему одной модели или я должен разделить его на два типа. Вот код: class...