我如何限制FileField只能以优雅的方式接受某种类型的文件(视频,音频,PDF格式等),服务器端?
我试图理解关于django的另一个神奇之处:它可以将字符串转换为模块.
在settings.py中,INSTALLED_APPS声明如下:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
)
Run Code Online (Sandbox Code Playgroud)
它包含的只是字符串.但是django会将这些字符串转换为模块并在以后导入它们.
我希望能够做同样的事情.但我不知道怎么做.我在settings.py中有一个渲染器调度程序的字典:
RESOUCE_RENDERER = {
'video': 'video_player',
'audio': 'audio_player',
}
Run Code Online (Sandbox Code Playgroud)
我想以后用这样的:RESOURCE_RENDERER['video'](MyVideo).
我无法直接分配函数名称(例如video_player),因为它存在于需要settings.py的模块中.
我正在研究一些使用树木的程序.我想知道是否有任何代码可以在OCaml中绘制一般树.
type Tree = Node of Tree * int * Tree | Child of int;;
Run Code Online (Sandbox Code Playgroud)
我在互联网上找到的只使用Caml Light,而不是Objective Caml.
提前致谢.
您最喜欢(免费或不支持)与django兼容的网络托管服务(以及一般的python)是什么?
PS:兼容OVH吗?
我在python d1和d2中有两个日期时间对象.我想要他们之间的时间差.我想要一些比(d1-d2)稍微复杂的东西:我希望夜间的时间比白天的时间少一个恒定的分数c,例如白天的一小时在白天只算半小时.
在python(pandas和/或numpy)中有一个简单的方法吗?
谢谢!
编辑:夜间时间是从晚上9点到早上7点.但理想情况下,我正在寻找一种解决方案,您可以在白天为任意时段选择任意权重
我刚刚从android developper的网站上下载了adt-bundle,试试看.当我点击"运行"按钮时开始出现问题:Android虚拟设备或"avd"速度非常慢.我有一台相当不错的机器(核心i7和16go的ram).他们不知道吗?我的意思是人们为Android开发了几年,他们是如何设法做到的?
我有一个抽象的模型类UploadItem来处理上传的文件.我希望每个子类能够定义upload_to路径.为此,我将回调传递给FileField的构造函数.
这是一个例子:
class UploadItem(models.Model):
file = models.FileField(upload_to=UploadItem.get_directory)
class Meta:
abstract = True
# I want videos to be storred in 'videos/' directory
class Video(UploadItem):
def get_directory(self, instance, filename):
return 'videos/'
Run Code Online (Sandbox Code Playgroud)
但这不起作用,我收到此错误:
file = models.FileField(upload_to=UploadItem.get_directory)
NameError: name 'UploadItem' is not defined
Run Code Online (Sandbox Code Playgroud) 在我的应用程序中,当用户按下按钮时,我启动HTTP异步请求(使用AFURLConnectionOperation)并在completionHandler块中更改UILabel的文本.但是,当请求结束时,这种变化不会发生,而是在2-3秒后发生.以下是导致此行为的代码段.
AFURLConnectionOperation* operation = ...
[opration setCompletionBlock:^{
NSLog(@"This text appears immediatly");
[myLabel setText:@"this one is delayed for 2-3 sec"];
}];
[opreation start];
Run Code Online (Sandbox Code Playgroud)
tahnks寻求帮助
我试图在spoj.com 上做这个问题,但我不断收到错误运行时错误(NZEC).我在python中编码.我不知道为什么.这是我的代码,
import sys
def unique(lines, exact=True):
for L in lines:
if L.count('#') != 1 and exact:
return False
if L.count('#') > 1 and not exact:
return False
return True
def resolve(N, lines):
diags = [
[lines[i][i+j] for i in range(max(0, -j), min(N, N-j))]
for j in range(-N+1, N)]
anti_diags = [
[lines[i][N-1 -(i+j)] for i in range(max(0, -j), min(N, N-j))]
for j in range(-N+1, N)]
if unique(lines) and unique(zip(*lines)) and unique(diags, False) and unique(anti_diags, False):
return "YES" …Run Code Online (Sandbox Code Playgroud) 在我的模型中,我想要一个外键的可选字段.我试过这个:
field = models.ForeignKey(MyModel, null=True, blank=True, default=None)
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误:
model.mymodel_id may not be NULL
Run Code Online (Sandbox Code Playgroud)
我正在使用sqlite编辑:如果它可以帮助,这里是异常位置:
/usr/lib/python2.6/site-packages/django/db/backends/sqlite3/base.py in execute, line 200
Run Code Online (Sandbox Code Playgroud)
所以这是sqlite特定的问题,我想.
我想在第1A轮中与Code Jam问题C分享,它叫做Proper Shuffle.我很了解你的解决方案.
这是问题所在:
大小N的排列是N个数字的序列,每个数字在0和N-1之间,其中每个数字恰好出现一次.它们可能以任何顺序出现.
有很多(N因素,确切地说,但在这个问题上并不重要)大小为N的排列.有时我们只想随机选择一个,当然我们想要随机选择一个:每个排列大小为N应该具有相同的被选择概率.
这是实现该目标的可能算法之一的伪代码(我们将其称为下面的好算法):
for k in 0 .. N-1:
a[k] = k
for k in 0 .. N-1:
p = randint(k .. N-1)
swap(a[k], a[p])
Run Code Online (Sandbox Code Playgroud)
在上面的代码中,randint(a ... b)返回a和b之间的均匀随机整数.
这是单词中的相同算法.我们从身份置换开始:从0到N-1的所有数字按递增顺序写入.然后,对于0和N-1之间的每个k(包括0和N-1),我们在k和N-1之间选择一个独立的均匀随机整数pk,包括在内,并在我们的排列中交换位置k(从0开始)的元素与元素at位置pk.
这是N = 4的示例.我们从身份排列开始:
0 1 2 3
Run Code Online (Sandbox Code Playgroud)
现在k = 0,我们选择0到3之间的随机p0,包括0和3.假设我们选择了2.我们交换第0和第2个元素,我们的排列变为:
2 1 0 3
Run Code Online (Sandbox Code Playgroud)
现在k = 1,我们选择1到3之间的随机p1,包括1和3.假设我们再次选择2.我们交换第一和第二元素,我们的排列变为:
2 0 1 3
Run Code Online (Sandbox Code Playgroud)
现在k = 2,我们选择2和3之间的随机p2,包括两者.假设我们选择了3.我们交换了第二和第三个元素,我们的排列变为:
2 0 3 1
Run Code Online (Sandbox Code Playgroud)
现在k = 3,我们选择3到3之间的随机p3,包括3和3.唯一的选择是3.我们交换第3和第3个元素,这意味着排列不会改变:
2 0 3 1
Run Code Online (Sandbox Code Playgroud)
这个过程现在结束了,这是我们的随机排列.
还有许多其他算法可以统一产生随机排列.然而,还有许多算法可以生成看起来与此算法非常相似的随机置换,但不是统一的 - 某些置换比其他算法更可能由这些算法生成.
这是一种不好的算法.采用上面的好算法,但是在每个步骤中,不是在k和N-1之间随机选择pk,而是在0和N-1之间随机选择它.这是一个很小的变化,但现在一些排列比其他排列更容易出现!
这是这个算法的伪代码(我们称之为下面的坏算法):
for k in 0 …Run Code Online (Sandbox Code Playgroud) django ×5
python ×4
numpy ×2
afnetworking ×1
algorithm ×1
block ×1
csrf ×1
datetime ×1
directory ×1
draw ×1
eclipse ×1
file-upload ×1
filefield ×1
foreign-keys ×1
hosting ×1
ios ×1
ocaml ×1
optional ×1
pandas ×1
performance ×1
security ×1
sqlite ×1
string ×1
tensorflow ×1
tree ×1
variables ×1
web-hosting ×1