Я не уверен, почему я получаю эту ошибку, недавно я установил метод if и else в свой файл мультимедиа, чтобы уловить некоторую ошибку, и теперь я получаю совершенно новый. Вот мой код.IndexError at/add_post/index index за пределами допустимого диапазона
media.py
import json
from goose import Goose
def extract(url):
g = Goose()
article = g.extract(url=url)
if article.top_image is None:
return "hello"
else:
resposne = {'image':article.top_image.src}
return article.top_image.src
views.py
class PostCreateView(CreateView):
model = Post
form_class = PostForm
template_name = 'main/add_post.html'
def form_valid(self, form):
self.object = form.save(commit=False)
# any manual settings go here
self.object.moderator = self.request.user
self.object.image = extract(self.object.url)
self.object.save()
return HttpResponseRedirect(reverse('post', args=[self.object.slug]))
@method_decorator(login_required)
def dispatch(self, request, *args, **kwargs):
return super(PostCreateView, self).dispatch(request, *args, **kwargs)
Сообщите об ошибке, пожалуйста. Трудно сказать, где в этом коде произошла ошибка, и я уверен, что есть больше кода, к которому у нас нет доступа. – abe
Может быть, article.top_image не имеет значения null, но article.top_image.src есть? –
@IbrahimAhmed, ошибка IndexError at/add_post/индекс индекса за пределами диапазона Вам нужна трассировка? Это происходит из env/local/lib/python2.7/site-packages/django/db/models/fields/files.py в __get__, строка 202 –