Я работаю в блоге Django. Я создал столбец URL-адресов в сообщении администратора следующим образом.
однако, когда я нажимаю ссылку на странице, страница переходит по ссылке, которая содержит localhost: 8000 в начале URL-адреса. например, http://127.0.0.1: 8000 / Yahoo / www.yahoo.com
Я сделал ссылку как <a href="{{ post.url }}">Visit yahoo.com!</a>
, однако это, вероятно, неправильный способ сделать Это. Не могли бы вы посоветовать мне, как решить эту проблему?
мой класс в model.py
class Post(models.Model):
title = models.CharField(max_length=200, unique=True)
slug = models.SlugField(max_length=200, unique=True)
author = models.ForeignKey(User, on_delete= models.CASCADE,related_name='blog_posts')
updated_on = models.DateTimeField(auto_now= True)
content = models.TextField()
created_on = models.DateTimeField(auto_now_add=True)
status = models.IntegerField(choices=STATUS, default=0)
url = models.CharField(max_length=200, unique=True, default='')
class Meta:
ordering = ['-created_on']
def __str__(self):
return self.title
мой html
{% extends 'base.html' %} {% block content %}
<div class="container">
<div class="row">
<div class="col-md-8 card mb-4 mt-3 left top">
<div class="card-body">
<h1>{% block title %} {{ object.title }} {% endblock title %}</h1>
<p class=" text-muted">{{ post.author }} | {{ post.created_on }}</p>
<p class=" text-muted">{{ post.url }}</p>
<a href="{{ post.url }}">Visit yahoo.com!</a>
<p class="card-text ">{{ object.content | safe }}</p>
</div>
</div>
{% block sidebar %} {% include 'sidebar.html' %} {% endblock sidebar %}
</div>
</div>
{% endblock content% }