Tengo dos direcciones URL. Una es para blogs y la otra para juegos. Tengo una aplicación para juegos y blogs.
path('',include('games.urls')), path('blog',include('blogs.urls')),La url de mi gameapp es así:
path('<slug:platform>/<slug:slug>',views.oyun,name='detail'),Las URL de mi blogapp son así:
path('', views.blogs, name='blog'), path('/<slug:slug>', views.blog_id, name='blog_id'), Esta URL va a ( path('/<slug:slug>', views.blog_id, name='blog_id') ), views.oyun, por lo que está dando un error. Como puedo resolver esto?
Views.py def blogs(request): blogss=blog.objects.all().order_by('-created') return render(request,"blog.html",{"blogs":blogss}) def blog_id(request,slug): blog_id=blog.objects.get(seo_url=slug) return render(request,"blog-writings.html",{"blog_id":blog_id}) def oyun(request,platform,slug): oyun = Oyunlar.objects.get(slugyap=slug) ...La ruta detail capturará las direcciones URL que se supone deben activar la ruta blog_id . De hecho, en games.urls vemos:
path('<slug:platform>/<slug:slug>',views.oyun,name='detail'), mientras que para blog_id , la ruta URL completa es:
'blog/<slug:slug>' Esto significa que si visita blog/foo , activará la vista oyun con 'blog' como valor para la variable de platform y 'foo' como valor para la variable slug .
Puede intercambiar las rutas, de modo que primero inspeccione los elementos con un prefijo blog/ , y solo active la vista oyun , si ese no es el caso:
urlpatterns = [ path('blog',include('blogs.urls')), # ← first the blog/ paths. path('',include('games.urls')), ]