У меня есть база данных книг Django с прикрепленными транзакциями.В интерфейсе администратора на каждой странице книги я хотел бы показать транзакции, прикрепленные к каждой книге.
В идеале, это должно быть только для чтения, без возможности добавлять или удалять транзакции.Я хотел бы показать только некоторые поля модели.
В models.py
:
class Book(models.Model):
title = models.CharField(max_length=400)
class Transaction(models.Model):
id = models.IntegerField(primary_key=True)
book = models.ForeignKey(Book)
user = models.ForeignKey(User)
transaction_type = models.IntegerField(choices=TRANSACTION_TYPES)
ipaddress = models.IPAddressField(null=True, blank=True)
transaction_date = models.DateTimeField()
date_added = models.DateTimeField(auto_now_add=True)
class Meta:
get_latest_by = 'transaction_date'
ordering = ('-transaction_date',)
В admin.py
:
class TransactionInline(admin.StackedInline):
model = Transaction
readonly_fields = ['user', 'transaction_type', 'transaction_date']
verbose_name = 'Transaction'
verbose_name_plural = 'Book history'
class BookAdmin(admin.ModelAdmin):
fieldsets = [ (None, {'fields': ['title'}) ]
inlines = [ TransactionInline, ]
У меня есть нескольковопросы, связанные с тем, что транзакции являются концептуально доступными только для чтения.
- Как отключить ссылку «добавить новое» для транзакций?
- Как отобразить только поляЯ забочусь о - пользователь, транзакция_типа и транзакция_дата - и скрыть другие?
Также: заголовок в настоящее время "История книги - Транзакция: объект транзакции".Как я могу показать что-то более дружелюбное, чем «объект транзакции»?
Пожалуйста, дайте мне знать, если это нужно разделить на отдельные вопросы!
Спасибо.