Post () fehlen 1 erforderliches Positionsargument: 'Slug'Python

Python-Programme
Anonymous
 Post () fehlen 1 erforderliches Positionsargument: 'Slug'

Post by Anonymous »

Ich habe ein Problem in meinem Django -Projekt und brauche deine Hilfe. Wenn ich versuche, auf die Ansicht zuzugreifen, die Anfragen zur Postseite übernimmt, erhalte ich den folgenden Fehler: < /p>

Code: Select all

post() missing 1 required positional argument: 'slug'
< /code>
Dies geschieht, wenn ich versuche, zu einer URL zu navigieren, die das Anzeigen eines bestimmten Beitrags verarbeiten sollte.  Ich habe die Route in URLS.Py bestimmt, die den Slug -Parameter nimmt, und es sieht so aus: < /p>
path('post//', post, name='post'),
< /code>
In meiner Postansicht erwarte ich diesen Parameter, aber es sieht so aus, als würde er nicht richtig übergeben.from django.db import models
from django.utils.text import slugify
from django.contrib.auth import get_user_model

from django_resized import ResizedImageField
from tinymce.models import HTMLField
from hitcount.models import HitCountMixin, HitCount
from django.contrib.contenttypes.fields import GenericRelation
from taggit.managers import TaggableManager
from django.shortcuts import reverse

User= get_user_model()

class Author(models.Model):
user =models.ForeignKey(User,on_delete=models.CASCADE)
fullname = models.CharField(max_length=40,blank=True)
slug = slug = models.SlugField(max_length=400,unique=True,blank=True)
bio = models.TextField(HTMLField)
points = models.IntegerField(default=0)
profile_pic = ResizedImageField(size=[50,80],quality=100,upload_to='authors',default=None,null=True,blank=True)

def __str__(self):
return self.fullname

def save(self,*args,**kwargs):
if not self.slug:
self.slug = slugify(self.fullname)
super(Author,self).save(*args, **kwargs)

class Category(models.Model):
title = models.CharField(max_length=50)
slug = models.SlugField(max_length=400,unique=True,blank=True)

class Meta:
verbose_name_plural = 'categories'
def __str__(self):
return self.title

def save(self,*args,**kwargs):
if not self.slug:
self.slug = slugify(self.title)
super(Category,self).save(*args, **kwargs)

class Post(models.Model):
title = models.CharField(max_length=400)
slug = models.SlugField(max_length=400,unique=True,blank=True)
user = models.ForeignKey(Author,on_delete=models.CASCADE)
content = HTMLField()
categories = models.ManyToManyField(Category)
date = models.DateTimeField(auto_now_add=True)
approved = models.BooleanField(default=False)
hit_count_generic =GenericRelation(HitCount,object_id_field='object_pk',
related_query_name='hit_count_generic_relation'
)
tags = TaggableManager()

def save(self,*args,**kwargs):
if not self.slug:
self.slug = slugify(self.title)
super(Post,self).save(*args, **kwargs)

def __str__(self):
return self.title

def get_url(self):
return reverse("detail", kwargs={'slug':  self.slug})
< /code>
meine urls.py:
from django.urls import path
from .views import home
from .views import detail,post

urlpatterns = [
path('', home, name='home'),
path('detail//', detail, name='detail'),
path('post//',post,name='posts'),

]
< /code>
Meine Ansichten.py:
from django.shortcuts import render,get_object_or_404
from .models import Author,Category,Post
from .utils import update_views

def home(request):
return render(request, 'home.html')
def detail(request,slug):
post = get_object_or_404(Post,slug=slug)
context = {
'post':post,
}
update_views(request,post)

return render(request, 'detail.html',context)

def post(request,slug):
category = get_object_or_404(Category,slug=slug)
posts= Post.objects.filter(approved=True,categories=category)

context={
"posts":posts,
}
return render(request, 'posts.html',context)
def image(request):
return render(request, 'detail.html')
< /code>
posts.html:
{% for post in post %}

[i][/i]
[url={{ post.get_url }}]{{post.title}}[/url]

Started by [url=#]{{post.user.fullname|title}}[/url][/b].

2 replies
{{% get_hit_count for post %}} views

{% endfor %}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post