Что такое «Verbose_name» и «Ordering» в классе Meta? И, пожалуйста, объясните немного о мета-классе в django

#python #django #metaclass #verbose

#python #django #метакласс #подробный

Вопрос:

«‘ из django.db import models импортировать uuid class Book(модели.Модель): имя=модели.CharField(max_length=100) isbn=models.UUIDField(по умолчанию =uuid.uuid4, primary_key=True) writer=модели.CharField(max_length = 100)

     class Meta:
        ordering=['name']
        ordering='User MetaData'''
  

Комментарии:

1. docs.djangoproject.com/en/dev/ref/models/options/#ordering

2. Также docs.djangoproject.com/en/dev/topics/db/models/#meta-options

Ответ №1:

С помощью класса Meta вы можете присвоить вашей модели метаинформацию, такую как имя таблицы базы данных или параметры упорядочения. Вы можете проверить это в документации

Используя «verbose_name» в классе Meta, вы можете указать понятное человеку имя для единственного объекта. Документация

Используя ‘ordering’ в классе Meta, вы можете указать, в каком порядке вы получите список объектов. С помощью [‘-field_name’] вы указываете порядок убывания. С помощью [‘field_name’] вы указываете порядок возрастания. Вы можете сделать упорядочение по нескольким полям: ordering = [‘field1’, ‘field2’]. Документация

Ответ №2:

1.Model Meta в основном используется для изменения поведения полей вашей модели, таких как изменение параметров порядка, verbose_name и множества других параметров. Добавлять мета-класс в вашу модель совершенно необязательно.

2.Verbose_name — это понятное для человека имя поля.

3. Порядок принимает список строковых значений, которые являются полями модели. Он используется для определения порядка объектов модели. Когда объекты этой модели будут извлечены, они будут присутствовать в этом порядке.