首页 > 解决方案 > 如何在django上的数据库中超链接数据

问题描述

我正在尝试构建一个简单的搜索功能django,当我点击它时会引导我进入链接。(我知道 API 链接是 JSON 链接,因此单击它们不会给您任何输出值,但关键是能够单击它们)

我尝试使用但它不起作用

从我的结果.html:

{% for dataset in datasets %}
<br/>
{{ dataset.datasets_available }}
<br/>
{{ dataset.data_source }}
<br/>
{{ dataset.brief_description_of_datasets }}
<br/>
{{ dataset.country }}
<br/>
<a href='https://www.google.com'>{{ dataset.api_documentation }}<a>
<br/> #^ is the part i wanna fix
<br/>
{% endfor %}
{% else %}
<p style="font-family:Cambria">No search results for this query</p> 
{% endif %}`

来自views.py:

def results(request):
query = request.GET.get('q')
if query:
    datasets = api_data.objects.filter(Q(datasets_available__icontains=query))
    context = {
        'datasets': datasets,
    }
return render(request, 'Search/results.html', context)

来自models.py:

class api_data(models.Model):
data_source = models.TextField()
brief_description_of_data = models.TextField()
datasets_available = models.TextField()
brief_description_of_datasets = models.TextField()
country = models.TextField()
api_documentation = models.TextField()

class Meta:
    verbose_name_plural = "api_data"

api_documentation 当前是字符串中的 url。我希望能够单击 html 中的输出并查看实际的网站

标签: htmldjangohyperlink

解决方案


我不确定您要做什么,但如果网站 URL 在该api_documentation字段中,那么您需要将此字段设为href您的 html 锚点。

像这样的东西:

<a href='{{ dataset.api_documentation }}'>{{ dataset.api_documentation }}</a>

推荐阅读