django admin wiele-do-wielu modeli pośrednich przy użyciu through = i filter_horizontal

Tak wyglądają moje modele:

<code>class QuestionTagM2M(models.Model):
    tag = models.ForeignKey('Tag')
    question = models.ForeignKey('Question')
    date_added = models.DateTimeField(auto_now_add=True)

class Tag(models.Model):
    description = models.CharField(max_length=100, unique=True)

class Question(models.Model):
    tags = models.ManyToManyField(Tag, through=QuestionTagM2M, related_name='questions')
</code>

Wszystko, co naprawdę chciałem zrobić, to dodać znacznik czasu, gdy dana relacja manytomany została utworzona. To ma sens, ale dodaje też trochę złożoności. Poza usunięciem funkcji .add () [pomimo tego, że jedyne pole, które naprawdę dodam, jest automatycznie tworzone, więc technicznie nie powinno to już więcej przeszkadzać]. Ale mogę z tym żyć, bo nie mam nic przeciwko robieniu tego dodatkowegoQuestionTagM2M.objects.create(question=,tag=) zamiast tego, jeśli oznacza to uzyskanie dodatkowej funkcjonalności znacznika czasu. Moim problemem jest to, że naprawdę chciałbym móc zachować swojefilter_horizontal widżet javascript w admin. Wiem, że doktorzy mówią, że mogę zamiast tego użyć inline, ale jest to po prostu zbyt niewygodne, ponieważ nie ma żadnych dodatkowych pól, które w rzeczywistości byłyby w linii inline poza kluczem obcymTag tak czy inaczej. Również w większym schemacie mojego schematu bazy danych mójQuestion obiekty są już wyświetlane jako inline na mojej stronie administracyjnej, a ponieważ Django nie obsługuje zagnieżdżonych linii w admin [jeszcze], nie mam możliwości wyboru tagów dla danego pytania. Czy jest jakiś sposób na zastąpienieformfield_for_manytomany(self, db_field, request=None, **kwargs) lub coś podobnego, aby umożliwić moje użycie fajnegofilter_horizontal widget i automatyczne tworzeniedate_added kolumna do bazy danych? Wydaje się, że coś, co django powinno być w stanie wykonać natywnie, o ile określisz, że wszystkie kolumny w półprodukcie są tworzone automatycznie (inne niż klucze obce), być może zauto_created=True? lub coś w tym stylu

questionAnswers(3)

yourAnswerToTheQuestion