Я пытаюсь создать модель для приложения, позволяющего двум людям делать ставки друг с другом (я знаю, звучит глупо ...). Мне интересно, как установить ставку с пользователями. Структура, как этодизайн структуры модели для django
|-------------| |----------|
| Bet | | User |
| BetUser1 | |----------|
| BetUser2 |
| Winner |
| ... |
|-------------|
Таким образом, мы получили 2-х человек, что пари друг с другом (оба Users
из системы Джанго AUTH), а затем, после того, как один из них побеждает, есть победитель. Теперь все эти 3 поля типа User
, но:
- Должен ли я сделать BetUser1 и BetUser2 отдельные поля, или создать какое-то отношение многих к-два здесь? (со многими-к-двум - много-ко-многим и с некоторым внешним способом обеспечения не более 2
Users
может быть назначено каждой ставке? - Победителем может быть только пользователь 1 или пользователь 2, еще никто Конечно. Как я должен создать это поле, еще один
ForeignKey(User)
, или некоторые еще?
Просто глядя на свежие точки зрения, как это кажется, что в таком глупом случае я застрял с системой Джанго модели.
Для этого требуется ограничение, чтобы ограничить его двумя экземплярами Wager для одной и той же ставки. Я бы предложил добавить метод для проверки этого и создать исключение, если кто-то попытается сэкономить третью ставку для данной ставки. – 2008-10-31 13:44:26