在 Django 模型中,Meta 类是一个内部类,用于提供模型的元数据。这些元数据包括数据库表名、排序顺序、唯一约束等。以下是一些常见的 Meta 选项:
1. db_table: 指定数据库表的名称。
class MyModel(models.Model):
name = models.CharField(max_length=100)
class Meta:
db_table = 'custom_table_name'
2. ordering: 指定模型在数据库中的默认排序方式。
class MyModel(models.Model):
name = models.CharField(max_length=100)
age = models.IntegerField()
class Meta:
ordering = ['name', '-age'] # 按名称升序,按年龄降序
3. unique_together: 指定一组字段的组合必须在表中是唯一的。
class MyModel(models.Model):
name = models.CharField(max_length=100)
category = models.CharField(max_length=50)
class Meta:
unique_together = ('name', 'category')
4. verbose_name 和 verbose_name_plural: 指定模型在 Django 管理后台中的显示名称。
class MyModel(models.Model):
name = models.CharField(max_length=100)
class Meta:
verbose_name = 'Custom Name'
verbose_name_plural = 'Custom Names'
5. indexes: 指定数据库表中的索引。
class MyModel(models.Model):
name = models.CharField(max_length=100)
class Meta:
indexes = [
models.Index(fields=['name'], name='name_idx'),
]
这些是 Meta 选项的一些例子。您可以根据实际需求选择适当的选项。请注意,具体的实现和用法可能会因 Django 版本而异,因此建议查看与您正在使用的 Django 版本相对应的[官方文档](https://docs.djangoproject.com/)以获取更详细和最新的信息。
转载请注明出处:http://www.zyzy.cn/article/detail/7131/Django