Quando un utente si registra per la mia app. Ricevo questo errore quando raggiunge la pagina del profilo.Django L'attributo 'immagine' non ha un file associato con esso
The 'image' attribute has no file associated with it.
Exception Type: ValueError
Error during template rendering
In template C:\o\mysite\pet\templates\profile.html, error at line 6
1 <h4>My Profile</h4>
2
3 {% if person %}
4 <ul>
5 <li>Name: {{ person.name }}</li>
6 <br><img src="{{ person.image.url }}">
Traceback Switch back to interactive view
File "C:\o\mysite\pet\views.py" in Profile
71. return render(request,'profile.html',{'board':board ,'person':person})
penso che questo errore si verifica perché il mio modello richiede un'immagine e visto che appena registrata non può aggiungere un'immagine a meno che non andare alla pagina di modifica e aggiunge una pagina di poi si può accedere alla pagina del profilo.
mio profile.html
<h4>My Profile</h4>
{% if person %}
<ul>
<li>Name: {{ person.name }}</li>
<br><img src="{{ person.image.url }}">
</ul>
{% endif %}
mio profilo funzione in views.py
def Profile(request):
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('world:LoginRequest'))
board = Board.objects.filter(user=request.user)
person = Person.objects.get(user=request.user)
return render(request,'profile.html',{'board':board ,'person':person})
ho provato questa soluzione con la creazione di un'istanza di 2 oggetto Person e li separa il mio modello con un se ma non ci riuscisse.
<h4>My Profile</h4>
{% if person %}
<ul>
<li>Name: {{ person.name }}</li>
</ul>
{% endif %}
{% if bob %}
<ul>
<br><img src="{{ bob.image.url }}">
</ul>
mie soluzioni alla funzione Profilo
def Profile(request):
if not request.user.is_authenticated():
return HttpResponseRedirect(reverse('world:LoginRequest'))
board = Board.objects.filter(user=request.user)
person = Person.objects.get(user=request.user)
bob = Person.objects.get(user=request.user)
return render(request,'profile.html',{'board':board ,'person':person,'bob':bob})
Sto leggendo la documentazione per il modello incorporato nei tag di template e filtri Credo che una soluzione è quella di utilizzare (e) tag ma non riesco a usarlo correttamente.
Come posso configurare questo modello per rendere l'immagine un'opzione. Se la loro non è un'immagine, lascialo ma mostra il nome delle persone.
Grazie per avermi aiutato
Il vero problema qui è Dj la decisione ango * ritardata * di generare un errore quando i file non esistono, dovrebbe invece restituire None. – s29