Django models 在Wagtail中设置默认代码段的最佳方法是什么

Django models 在Wagtail中设置默认代码段的最佳方法是什么,django-models,wagtail,wagtail-snippet,Django Models,Wagtail,Wagtail Snippet,我想在Wagtail博客项目中设置默认代码段(文章类别) 我的选择是在models.py模块的末尾添加以下行: 如果BlogPageCategory.objects.filter(名称='Association')。count()==0: category=BlogPageCategory(name='Association') category.save() 这是最好的方法吗?这会对现场性能产生任何影响吗 谢谢有多种方法可以实现您的目标: 推荐的方法是使用。此方法的优点是,在数据库中设置默

我想在Wagtail博客项目中设置默认代码段(文章类别)

我的选择是在models.py模块的末尾添加以下行:

如果BlogPageCategory.objects.filter(名称='Association')。count()==0:
category=BlogPageCategory(name='Association')
category.save()
这是最好的方法吗?这会对现场性能产生任何影响吗


谢谢

有多种方法可以实现您的目标:

  • 推荐的方法是使用。此方法的优点是,在数据库中设置默认值将在初始化时完成,而不是在运行时操作
  • 您所描述的方式(尽管最好在
    AppConfig的
    ready()
    方法(如上所述)中执行此操作,因为这通常是在服务器启动时运行任何代码的地方。这不会对性能产生太大影响,因为它只运行一次(当服务器启动时)
  • 使用fixture,IMO仅在将大量数据加载到数据库时才需要使用fixture

感谢您的回答,第一种选择似乎是最好的方式。