Замените все пробелы на тире во всех моих объектах "url" из моей модели статьи

Я хотел бы заменить все пробелы в моих определенных объектах url из моей модели Article на "-". Однако мой приведенный ниже код, похоже, не работает.

def index(request):
    change_urls = Article.objects.all()
    for i in change_urls:
        i.url.replace(" ", "-")
        i.save()

.replace(..) создает строку new, она не изменяет строку. Таким образом, вы можете работать с:

def index(request):
    change_urls = list(Article.objects.all())
    for i in change_urls:
        i.url = i.url.replace(' ', '-')
    Article.objects.bulk_update(change_urls, fields=('url',))
    # …

Но если вы хотите "slugify", пожалуйста, используйте slugify(…) функцию [Django-doc].

Вернуться на верх