练习 - 管理数据

已完成

如前所述,管理站点默认情况下不提供对数据的访问权限。 幸运的是,只需几行代码即可注册你希望通过该工具编辑的任何模型。

注册模型

  1. 打开 dog_shelters/admin.py。

  2. 在注释 # Register your models here. 的下方,添加以下代码以注册模型。

    # Register your models here.
    from .models import Shelter, Dog
    
    admin.site.register(Shelter)
    admin.site.register(Dog)
    
  3. 保存该文件。

  4. 返回到浏览器并刷新页面。

    注意,“DOG_SHELTERS”下面列出了“狗”和“收容所”。

    显示站点管理屏幕的屏幕截图。

访问我们的数据

注册模型后,我们现在可以管理数据。 如果数据库中已有数据,可以根据需要进行修改。

在我们的数据模型(可通过打开 models.py 浏览)中,我们有 ShelterDog。 一个 Shelter 包含多个 Dogs 以创建模型之间的关系。

让我们创建一个新的 Dog 来探索管理站点如何处理数据。

  1. 选择“狗”旁边的“添加”。

    显示“添加收容所”屏幕的屏幕截图。

    请注意,当你选择“收容所”的下拉列表时,系统不会列出收容所,因为我们尚未创建收容所。

    备注

    如果要继续之前开始的项目,可能会看到一个收容所(如果已创建)。

    下拉列表的存在是为了让我们可以选择将狗注册到的收容所。 可以通过选择加号 (+) 来创建一个新的收容所。

  2. 选择加号 (+)。

    此时会打开一个新窗口,可以在其中创建收容所。

    显示“添加收容所”屏幕的屏幕截图。

  3. 为收容所输入名称和位置,如 Contoso 和华盛顿州雷德蒙德。

  4. 选择“保存”。

    屏幕将更新,并显示新创建的收容所作为为狗选择的选项。

  5. 为狗输入名称和描述。

  6. 选择“保存”。

    屏幕将返回到狗的列表,并显示新创建的狗的信息。

    显示狗的列表的屏幕截图。

  7. 如果选择狗,你将转到详细信息页,你可以在其中更新任何值或删除该条目。

    备注

    如果转到管理站点的“收容所”部分,屏幕将显示狗或收容所的名称。 显示此信息是因为我们在对象上设置了 __str__ 方法。 任何对象的默认显示为 __str__ 返回的值。