当前位置: 首页 > 知识库问答 >
问题:

基数为10的int()的文字:“testuser”,即使传递的参数是字符串

公羊浩阔
2023-03-14

我必须为我的大学作业制作一个项目博客,我试图制作一个页面来显示某个特定用户的所有帖子,但我总是收到这个错误

追踪:

文件“/家/灰海/.虚拟envs/myenv/lib/python3.7/site-packages/django/core/处理程序/异常.py”在内部34。响应 = get_response(请求)

文件"/home/GrayOcean/. Virtual alenvs/myenv/lib/python3.7/site-pack/django/core/handler/base.py"在_get_response115。响应=self.process_exception_by_middleware(e,请求)

_get_response中的文件"/home/GrayOcean/. Virtual alenvs/myenv/lib/python3.7/site-pack/django/core/html" target="_blank">handler/base.py"113.响应=wrapped_callback(请求,*callback_args,**callback_kwargs)

user_blog_list 121.blogs=get_object_or_404(blog,author=username)中的文件“/home/Grayocean/grayocen.co/blog/views.py”

文件"/home/Grayocean/。virtualenvs/myenv/lib/python 3.7/site-packages/django/shortcut s . py "在get_object_or_404 93中。返回queryset.get(*args,**kwargs)

文件“/家/灰海/.虚拟envs/myenv/lib/python3.7/site-packages/django/db/models/query.py”在 get 399.克隆 = 自过滤器(*args, **kwargs)

过滤器892中的文件"/home/GrayOcean/. Virtual alenvs/myenv/lib/python3.7/site-pack/django/db/model/query.py"。返回自我。_filter_or_exclude(假,*参数,**kwargs)

_filter_or_exclude 910.clone.query中的文件“/home/Grayocean/.virtualenvs/myenv/lib/python3.7/site-packages/django/db/models/query.py”。add_q(q(*args,**kwargs))

add_q 1290.子句中的文件“/home/Grayocean/.virtualenvs/myenv/lib/python3.7/site-packages/django/db/models/sql/query.py”,_=self_add_q(q_object,self.used_alias)

_add_q 1318中的文件“/home/Grayocean/.virtualenvs/myenv/lib/python3.7/site-packages/django/db/models/sql/query.py”,

build_filter 1251.condition=self中的文件“/home/Grayocean/.virtualenvs/myenv/lib/python3.7/site-packages/django/db/models/sql/query.py”。build-lookup(查找、列、值)

文件"/home/Grayocean/。virtualenvs/myenv/lib/python 3.7/site-packages/django/db/models/SQL/query . py”。lookup = lookup_class(左侧,右侧)

文件"/home/Grayocean/。virtualenvs/myenv/lib/python 3.7/site-packages/django/db/models/lookups . py”。self.rhs = self.get_prep_lookup()

get_prep_lookup 115.self中的文件“/home/Grayocean/.virtualenvs/myenv/lib/python3.7/site-packages/django/db/models/fields/related_lookups.py”。rhs=target_field.get_prep_value(self.rhs)

文件“/家/灰海洋/.虚拟envs/myenv/lib/python3.7/site-packages/django/db/models/fields/init.py”,收录在get_prep_value 966中。返回整数(值)

异常类型:/user/rheazes处的值错误异常值:基数为10的int()的文本无效:“testuser”

视图.py

def user_blog_list(self, username):
    blogs=get_object_or_404(Blog, author=username)
    context={
    'posts':blogs
    }
    return render(request,'blog/user_posts.html',context)

models.py

class Blog(models.Model):
    title=models.CharField(max_length=100)
    content=models.TextField(blank=True)
    image = models.ImageField(upload_to='blog_images', blank=True)
    image1= models.ImageField(upload_to='blog_images', blank=True,verbose_name='second image')
    image2= models.ImageField(upload_to='blog_images', blank=True,verbose_name='third image')
    image3= models.ImageField(upload_to='blog_images', blank=True,verbose_name='fourth image')
    image4= models.ImageField(upload_to='blog_images', blank=True,verbose_name='fifth image')
    video =models.FileField(upload_to='blog_images',blank=True)
    date_posted=models.DateTimeField(default=timezone.now)
    author=models.ForeignKey(User, on_delete=models.CASCADE)
    likes=models.ManyToManyField(User,related_name='likes',blank=True)
    dislikes=models.ManyToManyField(User,related_name='dislikes',blank=True)

网址.py

path('user/<str:username>',views.user_blog_list,name='user-posts'),

共有1个答案

章高朗
2023-03-14

您在get_object_or_404()函数中使用了错误的查找表达式。它应该是author__username=username而不是作者=username

def user_blog_list(self, username):
    blogs=get_object_or_404(Blog, author__username=username) # change is here <<<<
    context={
    'posts':blogs
    }
    return render(request,'blog/user_posts.html',context)
 类似资料:
  • 我正在使用创建通知。根据我的文件: 在我的< code>urls.py中。我通过在我的视图中使用它来生成测试通知。py: 我可以轻松获取此url中的未读通知数量: 它返回,如我所愿。但是使用我无法获取通知列表,我收到此错误: 作为我使用任何帮助将不胜感激。 完全回溯 环境: 请求方法:GET请求URL:http://127.0.0.1:8000/inbox/notifications/api/un

  • 问题内容: 我在网上找到了这段代码,其中有一部分我不理解。对于doInBackground方法,传递的参数为。有人可以告诉我这是什么意思吗?那是什么 问题答案: doInBackground(String… params) // params represents a vararg. new AsyncHttpPost().execute(s1,s2,s3); // pass strings to

  • 问题内容: 我有这个REST资源: 例如,param可以包含斜杠字符:。 很明显,我在用它来调用它,但是不起作用。 我也尝试过使用,将斜杠编码为,但也不起作用,它也不会到达端点。 编辑 我正在使用Retrofit来调用端点,并且这样做: 使用,但仍然无法正常工作。 问题答案: 保留字符(例如和)必须经过URL编码。 编码为 编码为 尝试。 在RFC 3986个 定义了以下一组保留的字符可被用作分隔

  • 问题内容: 我想将参数(即字符串)传递给Onclick函数。目前,我这样做: 例如,result.name等于字符串“ Add”。当我单击此按钮时,出现一个错误,提示未定义添加。由于此函数调用可以完美地与数字参数一起使用,因此我认为它与字符串中的符号“”有关。以前有人遇到过这个问题吗? 问题答案: 看起来您是从字符串构建DOM元素。您只需要在result.name周围添加一些引号即可: 您实际上应

  • 问题内容: 我想将字符串数组作为参数传递给函数。请看下面的代码 代替: 但是如果我这样做,我会收到一条错误消息,指出将其转换为。我想知道是否可以传递这样的值,或者正确的方法是什么? 问题答案: 怎么样:

  • 问题内容: 我正在将ajax发布到webmethod上,我可以在客户端(通过Firebug)看到请求的状态为200,但未达到我的webmethod中的停止点(webmethod的第一行)。json参数一切正常,但是通过反序列化json的方式,我不得不将其更改为字符串。 js: aspx: 问题答案: 您在jQuery JSON帖子中缺少内容类型: 请参阅本文。当我遇到类似的问题时,它对我很有帮助: