Nếu mô hình django được làm trừu tượng, như dưới đây, có cách nào để kiểm tra lớp để xác định rằng lớp đó trừu tượng không?Django - cách xác định xem lớp mô hình có trừu tượng hay không
class MyModel(models.Model):
class Meta:
abstract = True
Tôi hy vọng rằng tôi có thể kiểm tra MyModel.Meta.abstract, nhưng theo Django tài liệu:
Django hiện làm cho một điều chỉnh đến lớp Meta của một lớp cơ sở trừu tượng: trước khi cài đặt Thuộc tính meta, nó đặt abstract = False. Điều này có nghĩa là trẻ em của các lớp cơ sở trừu tượng không tự động trở thành các lớp trừu tượng.
Bất kỳ ý tưởng nào? Cảm ơn!
Có vấn đề gì khi đọc nguồn? Nó luôn luôn có sẵn. –
Tóm tắt từ các tài liệu liên quan đến lớp dẫn xuất 'Meta, không phải của cơ sở. –
@ S.Lott - Thật vậy, tôi RTFM nhưng không thành công với RTFS. Để công bằng, nhiều câu hỏi về S.O. có thể có thể tự trả lời bằng cách đọc nguồn. @Dmitry - Tôi hơi bối rối trước nhận xét của bạn. Từ django/db/basy.py, có vẻ như tất cả các thuộc tính trong lớp Meta được chuyển đến một lớp mới được tham chiếu như _meta. Đây là lớp chứa giá trị trừu tượng ban đầu được đặt trong các lớp Meta của mô hình. Bất kể, @sheats đã trả lời câu hỏi của tôi (Cảm ơn một lần nữa). – Nagyman