我在我的FileField类型的模型中有一个字段.这给了我一个类型为File的对象,它有以下方法:
File.name:文件名,包括MEDIA_ROOT的相对路径.
我想要的是类似.filename的东西,它只会给我文件名,而不是路径
就像是:
{% for download in downloads %}
<div class="download">
<div class="title">{{download.file.filename}}</div>
</div>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
这将给出类似myfile.jpg的东西
谢谢
我有一个视图功能:
@login_required
def myview():
# do something
# respond something
pass
Run Code Online (Sandbox Code Playgroud)
如何指定要重定向的此视图函数的确切URL?
我有一个程序将列表写入文件.该列表是管道分隔的行列表,应该将这些行写入文件,如下所示:
123|GSV|Weather_Mean|hello|joe|43.45
122|GEV|temp_Mean|hello|joe|23.45
124|GSI|Weather_Mean|hello|Mike|47.45
Run Code Online (Sandbox Code Playgroud)
但它写了这行啊啊啊:
123|GSV|Weather_Mean|hello|joe|43.45122|GEV|temp_Mean|hello|joe|23.45124|GSI|Weather_Mean|hello|Mike|47.45
Run Code Online (Sandbox Code Playgroud)
这个程序把所有的行都写成了一行,没有任何换行符.这给我带来了很大的麻烦,我想弄清楚如何扭转这一点,但无论如何,我的程序错在哪里?我认为写行应该在文件中写下行而不是只写一行到一行.
fr = open(sys.argv[1], 'r') # source file
fw = open(sys.argv[2]+"/masked_"+sys.argv[1], 'w') # Target Directory Location
for line in fr:
line = line.strip()
if line == "":
continue
columns = line.strip().split('|')
if columns[0].find("@") > 1:
looking_for = columns[0] # this is what we need to search
else:
looking_for = "Dummy@dummy.com"
if looking_for in d:
# by default, iterating over a dictionary will return keys
new_line = d[looking_for]+'|'+'|'.join(columns[1:])
line_list.append(new_line)
else:
new_idx = str(len(d)+1)
d[looking_for] = …Run Code Online (Sandbox Code Playgroud) 我需要通过XavascriptHttpRequest从javascript向python服务器发送数据.因为我使用的是localhost,所以我需要使用CORS.我正在使用Flask框架及其模块flask_cors.作为javascript我有这个:
var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("POST", "http://localhost:5000/signin", true);
var params = "email=" + email + "&password=" + password;
xmlhttp.onreadystatechange = function() {//Call a function when the state changes.
if(xmlhttp.readyState == 4 && xmlhttp.status == 200) {
alert(xmlhttp.responseText);
}
}
xmlhttp.send(params);
Run Code Online (Sandbox Code Playgroud)
和python代码:
@app.route('/signin', methods=['POST'])
@cross_origin()
def sign_in():
email = cgi.escape(request.values["email"])
password = cgi.escape(request.values["password"])
Run Code Online (Sandbox Code Playgroud)
但当我执行它时,我收到此消息:
XMLHttpRequest无法加载localhost:5000/signin.请求的资源上不存在"Access-Control-Allow-Origin"标头.因此不允许原点'null'访问.
我该如何解决?我知道我需要使用一些"Access-Control-Allow-Origin"标头,但我不知道如何在此代码中实现它.顺便说一句,我需要使用纯JavaScript.
我有一个名为showMap.html的HTML文件
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>Map</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false">
</script>
<script type="text/javascript" src="js/map.js"></script>
</head>
<body onload="showPosition()">
<div id="map_canvas" style="width:500px;height:500px;"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
另一个javascript文件map.js放在同一目录的js文件夹中.这个代码在加载html文件时工作正常.但是当我在服务器中运行它时这不起作用.我使用python flask框架返回结束编程.有趣的是,如果我扩展html文件中的javascript代码,同样会很好.唯一的问题是外部文件.
我正在使用Flask和SQLAlchemy.
假设我有一个用户模型,其中包含字段'popular'和'date_created'.我想做以下查询:
SELECT * FROM user ORDER BY popularity DESC, date_created DESC LIMIT 10
Run Code Online (Sandbox Code Playgroud)
如何在SQLAlchemy中执行多个order_by?对于单个,这适用:
User.query.order_by(User.popularity.desc()).limit(10).all()
Run Code Online (Sandbox Code Playgroud)
我应该添加另一个order_by吗?或者将流行度和date_created都放在我当前的order_by中?我希望人气在date_created上优先订购.
非常感谢你!
我可以在座位表中查询没有分配邀请的所有座位:
seats = Seat.query.filter_by(invite=None).all()
Run Code Online (Sandbox Code Playgroud)
但是,当查询所有分配了邀请的座位时,我得到一个错误:
seats = Seat.query.filter_by(invite!=None).all()
Run Code Online (Sandbox Code Playgroud)
这是我的Seat类:
NameError: name 'invite' is not defined
Run Code Online (Sandbox Code Playgroud)
如何查询所有者不为空的所有座位?
谢谢
我正在使用selenium来测试我的Web应用程序,我可以使用成功找到标签By.xpath.但是现在我需要在该节点中找到子节点.
例:
<div id="a">
<div>
<span />
<input />
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我可以:
WebElement divA = driver.findElement( By.xpath( "//div[@id='a']" ) )
Run Code Online (Sandbox Code Playgroud)
但现在我需要找到输入,所以我可以这样做:
driver.findElement( By.xpath( "//div[@id='a']//input" ) )
Run Code Online (Sandbox Code Playgroud)
但是在代码中我只有divA,而不是它的xpath ...我想做这样的事情:
WebElement input = driver.findElement( divA, By.xpath( "//input" ) );
Run Code Online (Sandbox Code Playgroud)
但是这样的功能不存在.我能这样做吗?
顺便说一句:有时候我需要找到一个<div>具有某种后代节点的东西.我怎样才能在xpath中询问"包含带有文本'hello world'的跨度的div-tag"?
我有一个带有多个输入的html表单,如下所示:
<input name="hello[]" type="text" />
<input name="hello[]" type="text" />
<input name="hello[]" type="text" />
Run Code Online (Sandbox Code Playgroud)
在PHP中,你将它作为一个数组得到,但它在使用Flask的Python中是一样的吗?
我试过这个:
hello = request.form['hello']
print(hello)
Run Code Online (Sandbox Code Playgroud)
在Flask中,但是没有用,我收到了"400次错误请求":
Bad Request
The browser (or proxy) sent a request that this server could not understand.
Run Code Online (Sandbox Code Playgroud)
我如何在Flask中做到这一点?
PIL的变换功能有一个透视模式,需要一个8-tupel的数据,但我无法弄清楚如何转换让我们说这是一个正确的倾斜30度到该tupel.
有人能解释一下吗?
python ×6
flask ×5
django ×2
javascript ×2
sqlalchemy ×2
ajax ×1
cors ×1
django-views ×1
external ×1
html ×1
java ×1
perspective ×1
postgresql ×1
selenium ×1
webdriver ×1
xpath ×1