我在views.py中的功能是:
def detail(request,pk):
singlepost=get_object_or_404(iblog,pk=pk)
return render(request,'blog/blogpost.html',{'singlepost':singlepost})
我的数据库有几个项目,但它返回404错误原因? 我也用
path('<int:pk>/',views.detail,name='detail')
用于在views.py中映射url和调用detail函数 我测试我的项目的其他部分没有get_object_or_404功能,每件事情都是正确的 我的问题在于主键 我该如何解决这个问题? 感谢
答案 0 :(得分:0)
看起来您尝试访问的主键在模型中不存在。如果删除某些对象,则会发生这种情况。
Django向模型添加的默认主键属性为<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.viatechsystems.tts.MainActivity">
<Button
android:id="@+id/button_on"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click me for TTS"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintHorizontal_bias="0.292"
app:layout_constraintVertical_bias="0.498" />
<Button
android:id="@+id/button_off"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Off"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="@+id/button_on"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintHorizontal_bias="0.75"
app:layout_constraintVertical_bias="0.498" />
</android.support.constraint.ConstraintLayout>
。检查您是否正在访问有效对象,然后重试。