我想知道从settings.py文件导入变量到视图是否更好?或者更好地使用所需的变量创建配置文件?
我倾向于为我的Django应用程序编写配置文件,在必要时从那里读取和导入变量.例如:
.configrc
[awesomeVariables]
someMagicNumber = 7
Run Code Online (Sandbox Code Playgroud)
views.py
from ConfigParser import SafeConfigParser
#Open and parse the file
config = SafeConfigParser()
config.read(pathToConfig)
#Get variable
magicNumber = config.get('awesomeVariables', 'someMagicNumber'))
Run Code Online (Sandbox Code Playgroud)
但是,我注意到一些程序员更喜欢以下内容:
settings.py
SOME_MAGIC_NUMBER=7
Run Code Online (Sandbox Code Playgroud)
views.py
import settings
magicNumber = settings.SOME_MAGIC_NUMBER
Run Code Online (Sandbox Code Playgroud)
我很好奇不同方法的优点和缺点?可以直接从您的设置导入变量会损害架构的完整性吗?
我正在创建一个基于 Django 的客户端,旨在从 Web 服务返回数据。该项目的目标是根据用户在表单中选择的值从 Web 服务将数据返回给用户。表单提交后,会生成一个查询字符串,发送到 Web 服务,并以字符串形式返回页面数据。目前,该数据在浏览器中显示给用户。我想提供允许用户单击按钮并下载数据的功能。
当用户单击浏览器中的下载按钮时,如何将数据返回给用户?如何使相同数据的不同选项可用(即 application/json 或 text/csv)?
我正在尝试执行以下操作,但失败了:
返回我的模板的 render_to_response 对象。我将表单以及各种表单中的数据传递给模板。
def view(request):
#Do stuff, get data as string
#Get data into needed formats (see utils.py)
jsonData = jsonToJsonFile(dataString, fileName)
return render_to_response('template.html', {'someForm' : aForm,
'regularData' : stringData,
'jsonData' : jsonData...})
Run Code Online (Sandbox Code Playgroud)
包含将数据作为字符串并返回响应对象的函数。这部分我不确定我是否做得正确。我在视图中调用这些函数,以将 jsonData (和 csvData)从原始数据字符串转换为正确的格式。
def jsonToJsonFile(dataString, fileName):
#Get the data as json
theData = json.dumps(dataString)
#Prepare to return a json file
response = HttpResponse(theData, mimetype = 'application/json')
response['Content-Disposition'] …Run Code Online (Sandbox Code Playgroud) 我试图动画一个glyphicon-refresh图标,以便当我点击图标时它应该旋转.我试图使用CSS3这样做,但它无法正常工作.
这是我的标记:
<a id="update" href="#"><i class="glyphicon glyphicon-refresh"></i></a>
Run Code Online (Sandbox Code Playgroud)
这是我的css:
<style>
.glyphicon-refresh-animate {
animation-name: rotateThis;
animation-duration: .5s;
animation-iteration-count: infinite;
animation-timing-function: linear;
}
@keyframes "rotateThis" {
from { transform: scale( 1 ) rotate( 0deg ); }
to { transform: scale( 1 ) rotate( 360deg ); }
}
</style>
Run Code Online (Sandbox Code Playgroud)
这是我的JS:
<script type="text/javascript">
$( document ).ready( function() {
$( "#update" ).on( "click", function( e ) {
var $icon = $( this ).find( ".glyphicon glyphicon-refresh" ),
animateClass = "glyphicon-refresh-animate";
$icon.addClass( animateClass );
// setTimeout …Run Code Online (Sandbox Code Playgroud) 我无法在网上找到任何有关此值错误的内容,我完全不知道为什么我的代码会引发此响应.
我有一个大约50键的大字典.与每个键关联的值是表单中许多元素的2D数组[datetime object, some other info].样本看起来像这样:
{'some_random_key': array([[datetime(2010, 10, 26, 11, 5, 28, 157404), 14.1],
[datetime(2010, 10, 26, 11, 5, 38, 613066), 17.2]],
dtype=object),
'some_other_key': array([[datetime(2010, 10, 26, 11, 5, 28, 157404), 'true'],
[datetime(2010, 10, 26, 11, 5, 38, 613066), 'false']],
dtype=object)}
Run Code Online (Sandbox Code Playgroud)
我希望我的代码做的是允许用户选择开始和停止日期并删除不在该范围内的所有数组元素(对于所有键).
在整个代码中放置打印语句我能够推断它可以找到超出范围的日期,但由于某种原因,当它试图从数组中删除元素时会发生错误.
这是我的代码:
def selectDateRange(dictionary, start, stop):
#Make a clone dictionary to delete values from
theClone = dict(dictionary)
starting = datetime.strptime(start, '%d-%m-%Y') #put in datetime format
ending = datetime.strptime(stop+' '+ '23:59', '%d-%m-%Y %H:%M') #put in datetime …Run Code Online (Sandbox Code Playgroud) 我是 Django 框架的新手。我想学习它并用它来开发应用程序。我是Python新手。要学习 Django,我需要了解 Python 和设计模式吗?
我不知道我是否应该学习设计模式,例如MVC,并考虑编写应用程序,或者开始通过编写复杂的Web应用程序来学习语言。欢迎您提出建议。