django建表外键怎么写
时间: 2023-10-24 09:19:34 浏览: 78
数据库建表-建约束-建外键.doc
在 Django 中,可以使用 `ForeignKey` 字段来定义外键关系。例如,假设你有两个模型 `Author` 和 `Book`,每本书都属于一个作者,可以这样定义外键关系:
```python
from django.db import models
class Author(models.Model):
name = models.CharField(max_length=100)
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey(Author, on_delete=models.CASCADE)
```
在 `Book` 模型中,我们定义了一个 `ForeignKey` 字段 `author`,它指向了 `Author` 模型,并且定义了 `on_delete=models.CASCADE` 参数,表示当关联的 `Author` 对象被删除时,与之关联的 `Book` 对象也会被删除。
此外,还可以使用 `related_name` 参数来定义反向关系的名称,例如:
```python
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.ForeignKey(Author, on_delete=models.CASCADE, related_name='books')
```
这样就可以通过 `Author` 对象访问与之关联的所有 `Book` 对象,例如:`author.books.all()`。
阅读全文