如何解决Python导入:从.filename导入函数与从导入文件名
上下文:我试图将位于models.py中的2个类导入另一个名为admin.py的python文件中。 django文档说使用以下语法:
from .models import Question,Choice.
这是文件结构:file structure
问题:为什么,当我使用from . import models
然后在同一文件中调用models.Question
和models.Choice
时,出现以下错误:“ ModuleNotFoundError:没有名为'models'的模块“
在同一目录中的另一个文件中,此语法用于导入文件并在文件中调用函数而没有任何问题:from . import views
... views.index
解决方法
我建议您以这种方式导入模型。
from .models import *
现在,在python编码过程中,当您想使用某些特定模型时,只需写下该模型的名称即可。
例如,在我的项目中,我有一个utils.py文件,我导入了所有模型,在我的函数之一中,我称这些模型之一。
import json
import datetime
from .models import *
def cookieCart(request):
try:
cart = json.loads(request.COOKIES['cart'])
except:
cart = {}
print('Cart:',cart)
items = []
order = {'get_cart_total':0,'get_cart_items':0,'shipping':False}
cartItems = order['get_cart_items']
for i in cart:
try:
cartItems += cart[i]['quantity']
product = Producto.objects.get(id=i)
total = (product.price * cart[i]['quantity'])
order['get_cart_total'] += total
order['get_cart_items'] += cart[i]['quantity']
item = {
'product':{
'id':product.id,'name':product.name,'price':product.price,'imageURL':product.imageURL,},'quantity':cart[i]['quantity'],'get_total':total,}
items.append(item)
if product.despacho == True:
order['shipping'] = True
except:
pass
return {'cartItems':cartItems,'order':order,'items':items}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。