Просто добавьте аргумент по умолчанию post_title
как None
. Если вы хотите получить post_title
прямо из post_id
, отключите post_title
, это не приведет к ошибке, так как функции уже получили все удовлетворительные значения аргументов.
Итак:
def view_post(request, post_id, post_title=None):
Редактировать
Хорошо, пользователь хотел примерно slug field
. Поле Slug - это тип поля в модели django. В основном он используется для типа url. В приведенной выше проблеме pyknight202 хотел указать URL-адрес для post_title
. Таким образом, вы не можете использовать tilte напрямую в качестве URL-адреса, поскольку они содержат пробелы, поэтому для этого вам нужно добавить post_title
в дефисах или подчеркивании, чтобы их можно было прочитать. Следовательно, вам нужно поле slug в модели Post
.
https://helloworld.com/1/this-is-example
Итак, 1 равно post_id
, так как slug не может быть уникальным, поэтому вы можете не только получать из post_title
, поэтому вам нужно post_id
слишком. Ссылка