如何使用Sites框架将当前站点用作Django表单中的默认站点?
我正在使用Sites框架,希望将当前站点保存为我的一个模型的默认如何使用Sites框架将当前站点用作Django表单中的默认站点?,django,django-sites,Django,Django Sites,我正在使用Sites框架,希望将当前站点保存为我的一个模型的默认site值 型号: class MyModel(models.Model): site = models.ForeignKey( Site, on_delete=models.CASCADE, default=Site.objects.get_current()) # THIS IS WHAT I WANT TO DO (DOESN'T WORK) ...othe
site
值
型号:
class MyModel(models.Model):
site = models.ForeignKey(
Site,
on_delete=models.CASCADE,
default=Site.objects.get_current()) # THIS IS WHAT I WANT TO DO (DOESN'T WORK)
...other fields...
是否有一种方法可以在我保存
MyModel
实例时自动将当前Site
对象保存为Site
属性?或者我需要通过覆盖表单或模型的save
方法(或类似覆盖)手动执行此操作吗?您可以设置默认站点
型号.py
def get_current_site():
return Site.objects.get_current().id
class MyModel(models.Model):
site = models.ForeignKey(
Site,
on_delete=models.CASCADE,
default=get_current_site)
只有在数据库中创建了站点,并且在
settings.py
中设置了site\u ID
时,这才有效。您的意思是什么不起作用?