好吧,我偶然发现了导入和名称中带有连字符的 Django 应用程序的问题。
据我所知,Django 应用程序名称中甚至不允许使用连字符,但它仍然存在并且网站运行没有错误。我完全不知道该应用程序是如何创建的,因为该项目在我开始工作时已经存在。(这是一个 Django CMS 项目,如果它改变了什么顺便说一句)
现在的问题是,当我想在 shell 或项目中导入一些东西时,我不能只写,from my-app import module因为它总是因为连字符而引发错误。
同样在INSTALLED_APPS它与连字符一起列出INSTALLED_APPS = ('my-app')
那么我怎样才能真正解决这个问题并使它可用呢?我想过重命名,但我真的不知道后果,我也不想破坏 CMS 中的任何东西(我仍在学习 Django,CMS 对我来说很新)
我目前正在通过 django 管理界面显示我的字段model._meta.get_all_field_names()。现在这工作正常,但它也显示了数据集的主键(在我看来这看起来不太好)。
所以我的问题是:是否有一种“懒惰”的方式来获取除一个/多个字段之外的所有字段?或者我是否必须写除我不想显示的每个字段之外的每个字段list_display = array_of_fields_to_be_displayed