簡體   English   中英

Django通過元類選擇模型字段

[英]Django select model fields through in meta class

在這里,我需要從另一個表中選擇用戶的名字和名字。 模型是StockTransfer,但我需要用戶模型

class Meta:
    model = StockTransfer
    fields = (
        'id', 'from_stock', 'to_stock',
        'comment', 'products',
        'status', 'user',
        'transfer_request',
        'created_date',
        'date_delivery',
        'modified_date',
        'accepted_time',
        'cancelled_time',
        'first__name',
        'second__name'

    )

模型( users.py

class User(AbstractBaseUser, PermissionsMixin):
    first_name = models.CharField(max_length=255)
    second_name = models.CharField(max_length=255)

----- stocktransfer.py(模型)

class StockTransfer(BaseModel, DeleteMixin):
PENDING = '0'
APPROVED = '1'
CANCELLED = '2'

STATUS_CHOICES = (
    (PENDING, 'pending'),
    (APPROVED, 'approved'),
    (CANCELLED, 'cancelled'),
)

from_stock = models.ForeignKey('main.Stock', related_name='from_transfers')
to_stock = models.ForeignKey('main.Stock', related_name='to_transfers')
comment = models.CharField(max_length=255, blank=True, null=True)
status = models.CharField(max_length=1, choices=STATUS_CHOICES, default=PENDING)
user = models.ForeignKey('main.User', null=True)

我想我可以通過簡單的方法在元類字段中寫入first_name和second_name來選擇名字和名字。 這樣對嗎? 有任何想法嗎?

假設stock_transfer是StockTransfer的一個實例:

stock_transfer = StockTransfer.objects.all().get(id=1)
first_name = stock_transfer.user.first_name
second_name = stock_transfer.user.second_name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM