我想完成的是从url获取图像并创建缩略图。但是 我一直遇到这个错误:AttributeError at/link/'LinkForm'对象没有属性'url'我不知道如何修复这个问题。我是django和python的新手。在
在模型.py在
def upload_location(instance, filename):
return('{}/{}').format(instance.id, filename)
class Link(models.Model):
title = models.CharField("Headline", max_length=100)
submitter = models.ForeignKey(settings.AUTH_USER_MODEL)
submitted_on = models.DateTimeField(auto_now_add=True)
rank_score = models.FloatField(default=0.0)
url = models.URLField("URL", max_length=250, unique=True)
description = models.TextField(blank=True)
slug = models.SlugField(unique=True)
image_file = models.ImageField(upload_to=upload_location, blank=True)
with_votes = LinkVoteCountManager()
objects = models.Manager()
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('link:link_detail', kwargs={"slug": self.slug,
'pk': str(self.id)
})
def get_remote_image(self):
if self.url and not self.image_file:
result = urllib.request.urlretrieve(self.url)
self.image_file.save(
os.path.basename(self.url),
File(open(result[0]))
)
self.save()
在视图.py在
^{pr2}$在表单.py在
from django import forms
from .models import Link
import requests
class LinkForm(forms.ModelForm):
url = forms.URLField()
img = forms.ImageField(required=False)
class Meta:
model = Link
exclude = ('submitter', 'rank_score')
fields = [
'title',
'url',
'description'
]
您应该通过
form.instance
访问表单:相关问题 更多 >
编程相关推荐