【发布时间】:2015-01-27 11:44:07
【问题描述】:
您好,我是 Django 和 Python 的新手,遇到了一个很大的麻烦: 我将执行一个 Django 应用程序,该应用程序允许我输入两个数字并使用外部函数(一个非常简单的 python 文件)进行任何数学运算(没关系)。我希望在提出问题时说清楚:
如何在我的外部函数中调用我的两个数字,然后将获得的结果导入我的 Django 应用程序?
我用一些代码解释:
models.py
from django.db import models
class ElementiTab(models.Model):
des = models.CharField(max_length=30)
x = models.FloatField()
y = models.FloatField()
res = models.FloatField(default=0)
(目前我从 shell 插入 'des'、'x'、'y')
forms.py
from django import forms
from .models import ElementiTab
class ElementiTabForm(forms.ModelForm):
class Meta:
model = ElementiTab
fields = ('des', 'x', 'y','res' )
“des”是一个简单的描述
'x'和'y'是我的两个数字
'res'是我的外部函数的结果
views.py(html 不是一个麻烦)
from django.shortcuts import render
from .models import ElementiTab
def tabval(request):
valori = ElementiTab.objects.filter()
return render(request, 'apptabella/tabval.html', {'valori': valori})
我在 IDLE Python 中工作的外部函数:
oper.py
a = float(input('a = '))
b = float(input('b = '))
operation = (a+b)/b
print (operation)
实际上,我会用 models.py 的“x”和“y”变量代替“a”和“b”,我只对执行“操作”感兴趣并将结果放入“res”变量中。
最后我在浏览器上显示了我的应用程序(表格),类似于:
|DES| X |是 |RES|
|bla |1.3 | 0.4| 0.0 |
|asd |2.0|1.3| 0.0 |
等--
RES 是我要显示“res”的列(当然现在为零) 我已将 oper.py 放在 Django 应用程序文件夹中。我尝试导入变量等但没有成功!我没有想法!
非常感谢那些可以帮助我的人!
【问题讨论】:
-
我不太确定你在这里问什么。 Django 就是 Python,你可以导入任何外部模块并调用它的函数。
-
这个我知道;但问题(对我来说)是如何导入然后使用任何外部模块。我是新人..你能给我一些建议吗?
-
但是当您导入 Django 模块时,您在代码中使用了 import fine。为什么导入你自己的会不一样?
-
如果我尝试在 models.py 中导入 oper.py,我会出现“未解决的导入”错误,如果我尝试在 oper.py 中导入 x 和 y 形式 models.py并设置 a = x 和 b = y。所以我的麻烦是如何将'x','y'与'a','b'和'operation'与'res'“连接”。我必须以不同的方式定义“res”、“a”、“b”?怎么样?
标签: python django variables import