首页 文章

用于将模型连接到admin,Django的语法

提问于
浏览
0

我已经学习了几个月的python,并开始修改Django . 在发布之前,我读了github上自动生成的'admin.py'代码,并用谷歌搜索了这个问题 . 看来我的问题有点具体,而且坦率地说,我对此具体阅读非常困惑 . 因此,我希望这可以为这个美好的社区增添 Value . 题:

将模型连接到管理页面时,在admin.py中,首先导入admin:

来自django.contrib import admin

在此之后,您导入模型 . 然后,你应该通过以下方式连接你的模型:

admin.site.register(MODEL)

我不明白的是'site.register'是什么 . 该行以'admin'开头的事实 . 很有意义,因为您指定了以下导入(例如'admin.function'或'admin.class')的来源 . 如果它只是'admin.somefunctionfromadmin'我会完全理解这一点 . 现在,相反,我对'sites.register'是什么感到困惑 . 'sites'是一个模块,一个文件,并从该模块中“注册”一个函数吗?如果是这样,那么“管理员”是什么?一套?

我在整个Django中都看到了与这些类似的行,感觉有点困惑 .

谢谢!

1 回答

  • 1

    admin.siteAdminSite类的默认实例 . 在 django.contrib.admin.sites 中是instantiated .

    然后在 django/contrib/admin/__init__.pyimported . 当你完成 from django.contrib import admin 时,这使它可用作 admin.site .

    当您调用 admin.site.register(Model) 时,您正在调用此管理站点实例的 register 方法 .

相关问题