gpt4 book ai didi

python - django 为单个 url 设置乘法函数

转载 作者:太空宇宙 更新时间:2023-11-03 13:38:35 25 4
gpt4 key购买 nike

views.py 中有 2 个函数(手机和日期时间)。

views.py:

from django.http import *
from django.shortcuts import render
from django.http import HttpResponseRedirect
import pymysql


def cellphone(request):
from bs4 import BeautifulSoup
from urllib.request import urlopen

url ='http://www.digikala.com/Product/DKP-95906/Huawei-Mate-S-Dual-SIM-64GB-Mobile-Phone/'
data = urlopen(url)
soup = BeautifulSoup(data, 'html.parser')
price = soup.body.find('span', attrs={'id':'frmLblPayablePriceAmount'}).text

return render(request, 'system.html', {'price': price})



def datetime(request):
import datetime
now = datetime.datetime.now()
return render(request, 'system.html', {'now': now})

系统.html:

<html>
<head>
<style>
body {
padding: 0px;
margin: 0px;
background: #3A3F44;
}
</style>
</head>
<body>
<div style="height: 50px;background:#16A085;">
* {{ price }} * {{ now }} *
</div>
</body>
</html>

(这里因为system url设置了手机功能function,所以datetime功能不起作用。)

urls.py:

from django.conf.urls import include, url
from system.views import cellphone, datetime

urlpatterns = [
url(r'^system/', cellphone),
url(r'^system/', datetime),

我希望在加载页面时,这两个功能都能正常工作,并且我会在屏幕上看到价格和日期时间。怎么可能?

============================================= ==========

这有可能吗?

我创建了 datetime.html 文件:

<b> {{ now }} </b>

然后只改了这部分

return render(request, 'datetime.html', {'now': now})

来自 views.py。接下来像这样更改 system.html:

* {{ price }} * {% include 'datetime.html' %} *

但是接下来我能做什么呢?我可以在 urls.py 中进行哪些更改?它有效吗?这两个独立的功能在具有一个 URL 地址的单个网页中工作,对吧?!

最佳答案

我猜你正在使用 The built in now filter打印当前时间和日期,并将其误认为是上下文变量。

您不能让两个 View 响应一个请求,这不是 django 的工作方式。您必须创建一个 View 来提取模板需要的所有数据并将其呈现为响应。您仍然可以使用单独的函数来派生上下文,然后将它们收集到 View 中。

关于python - django 为单个 url 设置乘法函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35696980/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com