这是当前情况:
我在应用程序“ Transaction
”中有一个模型payment
一旦安装了新应用paypal_xyz_field
,我想在该模型Transaction
中添加payment_paypal
。
ie:在应用Transaction
中扩展paypal
并添加字段paypal_xyz_field
将采取什么方法?
如果要扩展事务模型,则必须在管理员中同时显示paypalTransaction
和Transaction
。
在管理员中,我只想仅显示一个模型“ Transaction
”
paypal_xyz_field
,paymill_xyz_field
,stripe_xyz_field
而不是paypalTransaction
,stripeTransaction
等。
此外,要基于应用从数据库/管理员自动添加/删除字段
# payment/models.py
from django.db import models
class Payment(models.Model):
base_field = models.CharField(max_length=64)
# paypal/models.py
from django.db import models
from payment.models import Payment
class Payment(Payment):
paypal_specific_field = models.CharField(max_length=64)
# stripe/models.py
from django.db import models
from payment.models import Payment
class Payment(Payment):
stripe_specific_field = models.CharField(max_length=64)
答案 0 :(得分:-1)
在模型字段中添加可编辑属性,并将其设置为False。
from django.db import models
class Payment(models.Model):
base_field = models.CharField(max_length=64)