Klasa nie ma kogut "Obiekty" w Django
from django.http import HttpResponse
from .models import Destination
def index(request):
boards = Destination.objects.all()
boards_names = list()
for Destination in boards:
boards_names.append(Destination.destinationtext)
response_html = ''.join(boards_names)
return HttpResponse(response_html)
Napisałem ten kod poniżej praktyki ram Django, ale otrzymuję następujące błędy przez Pilint:
E1101:Class 'Destination' has no 'objects' member
E0601:Using variable 'Destination' before assignment
Nie znaleziono powiązanych wyników
Zaproszony:
Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się
2 odpowiedzi
Anonimowy użytkownik
Potwierdzenie od:
: this
ostrzeżenie
co występuje, ponieważ nie zna naszych specjalnych zmiennych Django. Wtyczka pylint, taka jak
,
https://github.com/PyCQA/pylint-django
Może sprawić, że ta sztuczka.
E0601: Korzystanie z zmiennej "miejsce docelowe" przed przypisaniem : W przypadku pętli zdefiniowano zmienną nazwaną miejsce docelowe . To nie tylko zła praktyka, ponieważ zmienne Pythona muszą znajdować się w , ale także
Przesadza klasę
Miejsce docelowe , a to powoduje ten błąd. Prawdopodobnie chciałeś zrobić coś takiego:
Anonimowy użytkownik
Potwierdzenie od:
Oznacza to, że python widzi miejsce docelowe jak
LAN.
zmienna, zmienna lokalna Ty
używają
przed wizytą.
Możesz zmienić nazwę zmiennej w pętli, aby rozwiązać problem, ale w rzeczywistości możesz uczynić ją bardziej elegancką i szybszą tutaj, używając :
Jednak nadal nie jestem pewien, czy to rozwiązuje problem, ponieważ może zawierać kod HTML, który zostanie następnie pomieszany w odpowiedzi. Zwykle najlepiej jest używać szablonów.