使用Django,我可以像这样使用user = models.OneToOneField('auth.User')
创建一个关系:
class Image(models.Model):
site = # something here
user = models.OneToOneField('auth.User')
image = models.ImageField(upload_to='headers')
image_thumbnail = ImageSpecField(source='image', processors=[ResizeToFit(1920)], format='JPEG', options={'quality': 90})
image_admin_thumb = ImageSpecField(source='image', processors=[ResizeToFit(300)], format='JPEG', options={'quality': 80})
name = models.CharField(max_length=50)
date = models.DateTimeField(auto_now=True)
如何制作一个模型(如下所示),在尝试上传图片时会获得当前的site_id:
set a to (do shell script "ls")
答案 0 :(得分:3)
您可以执行以下两项操作之一:
get_current_site
快捷方式,但这需要request
对象settings.SITE_ID
获取Site对象 - 但这需要额外的查找。对于第二种情况,使用方式如下:
from django.contrib.sites.models import Site
from django.conf import settings
def set_current_site():
return Site.objects.get(pk=settings.SITE_ID)
并在模型中:
site = models.ForeignKey(Site, default=set_current_site)