Galera, eu sou noob em desenvolvimento web, mas estou querendo ingressar na área. Por isso comprei esse livro:
E tudo certo, mas quando cheguei na parte de mapeamento de urls e leitura de itens no banco de dados, retorna esse erro … Ele parece receber os dados relacionados, mas não modula na urls:
File "/home/jacksupremo/Documentos/estudoPython/web_estudo_Python/siteProjeto/lib/python3.10/site-packages/django/urls/resolvers.py", line 828, in _reverse_with_prefix
raise NoReverseMatch(msg)
django.urls.exceptions.NoReverseMatch: Reverse for 'detalhes_produto' with arguments '('chainsaw-man-volume',)' not found. 1 pattern(s) tried: ['produto/\\ (?P<id>[0-9]+)/(?P<slug_produto>[^/]+)\\Z']
Eu não entendi o motivo de erro, já li o capítulo novamente e não entendo o que devo re-codificar … Alguém pode me ajudar?
Normal , aqui vai minha opinião, fique a vontade para discordar, mas acho que ao buscar soluções, obterá muito mais resultados se buscar em Inglês mesmo…
Sobre o tópico como está retornando o método get_absolute_url no arquivo models.py?
Como o livro à qual está seguindo está com algumas desatualizações recomendo a leitura auxiliar da documentação! Neste caso segue para definir o método get-absolute-url → Model instance reference | Django documentation | Django
Mano, no livro, ele diz para criar um arquivo [quote=“null, post:7, topic:49218”] urls.py [/quote] no aplicativo main, ligar com o do progeto geral.
Então, segue o meu código do urls.py do aplicativo main:
from django.urls import path as pth
from . import views
from django.views.generic import TemplateView as TV
app_name='main'
urlpatterns = [
pth('', TV.as_view(template_name='index.html')),
pth('produtos/', views.listar_produtos,
name='listar_produtos'),
pth('produto/<int:id>/<str:slug_produto>',
views.detalhes_produto,
name='detalhes_produto'),
]
Esse é do projeto geral:
from django.contrib import admin
from django.urls import path as pth ,include
from django.views.generic import TemplateView as TV
from main import views as vw
from django.conf import settings as stt
from django.conf.urls.static import static as stc
urlpatterns = [
pth('admin/', admin.site.urls),
pth('ajuda/', TV.as_view(template_name='ajuda.html')),
pth('fale-conosco/', vw.ViwesFaleConosco.as_view(), name='fale_conosco'),
pth('', include('main.urls',namespace='main')),
] + stc(stt.MEDIA_URL, document_root=stt.MEDIA_ROOT)
Tens acesso ao material de apoio que acompanha este livro, caso não segue abaixo, somente acessar e baixar todo o conteúdo abordado, o qual poderá verificar algo o qual está errando, e então progredir…
Faz um teste em um ambiente virtual utilizando-se da versão 3.2.10, do django, pois realizei um teste com o material de apoio e não apresenta nenhum erro…