Итак, я создаю базу данных, в которой мне нужно иметь поле, связанное с конкретным отношением ManyToMany, но я не знаю, как перевести это в Django ORM. Например, у меня есть несколько статей, которые могут быть объединены с несколькими публикациями, но я хочу узнать, какая статья получила больше всего просмотров.
Я полагаю, что могу построить базу данных так:
+------------+--------+--------+-------+
| art_pub_id | art_id | pub_id | views |
+------------+--------+--------+-------+
| 101 | 201 | 301 | 6 |
+------------+--------+--------+-------+
| 102 | 201 | 302 | 4 |
+------------+--------+--------+-------+
| 103 | 202 | 301 | 8 |
+------------+--------+--------+-------+
Или я мог бы сделать это
+------------+--------+--------+
| art_pub_id | art_id | pub_id |
+------------+--------+--------+
| 101 | 201 | 301 |
+------------+--------+--------+
| 102 | 201 | 302 |
+------------+--------+--------+
| 103 | 202 | 301 |
+------------+--------+--------+
+----+------------+-------+
| pk | art_pub_id | views |
+----+------------+-------+
| 1 | 101 | 6 |
+----+------------+-------+
| 2 | 102 | 4 |
+----+------------+-------+
| 3 | 103 | 8 |
+----+------------+-------+
Я борюсь с тем, как перевести это на Django ORM. У меня есть статья с ManyToManyField, указывающим на публикацию, но я не знаю, где и как разместить представления IntegerField. Я пробовал иметь класс Publication_Article, который имеет два поля ManyToMany и поле моих представлений, но я не уверен, что это правильный способ сделать это.
Я также полностью осознаю, что могу неправильно подойти к проблеме с дизайном моей базы данных, и в этом случае знание того, как лучше всего это сделать, будет для меня бесценным.