我有一个表单,需要有一个有效的URL或一个有效的文件上传:
class ResourceUpload(ModelForm):
...
uploadedfile = forms.FileField('file')
url_address = forms.URLField('url')
...
Run Code Online (Sandbox Code Playgroud)
我如何覆盖FileField和URLField验证器,以便Django只在上面的两个字段都无效时才引发错误,但只要另一个有效,除了一个无效?
我试图做以下事情.有一个程序,调用它foo-bin,它接收一个输入文件并生成两个输出文件.一个愚蠢的Makefile规则是:
file-a.out file-b.out: input.in
foo-bin input.in file-a.out file-b.out
Run Code Online (Sandbox Code Playgroud)
但是,这并没有make以任何方式告诉两个目标将同时生成.make在串行运行时这很好,但如果一个人尝试make -j16或同样疯狂的话,可能会造成麻烦.
问题是,是否存在为这种情况编写正确的Makefile规则的方法?很明显,它会生成一个DAG,但不知何故,GNU make手册没有说明如何处理这种情况.
两次运行相同的代码并仅生成一个结果是不可能的,因为计算需要时间(想想:小时).仅输出一个文件也相当困难,因为它经常用作GNUPLOT的输入,GNUPLOT不知道如何只处理数据文件的一小部分.
我正在编写一个SQL Server存储过程,我想在执行存储过程的主体之前锁定表以进行更新.我不想阻止其他进程读取表,但我确实希望阻止其他进程更新表.
这是我的第一次尝试:
CREATE PROCEDURE someProcedure
BEGIN
SET TRANSACTION ISOLATION LEVEL READ COMITTED
BEGIN TRANSANCTION
SELECT COUNT(*) FROM TheTable WITH (UPDLOCK, TABLOCK)
-- Pause procedure so that we can view the locks with sp_lock
WAITFOR DELAY '00:15'
-- Do stuff
COMMIT
END
Run Code Online (Sandbox Code Playgroud)
当我执行存储过程并调用sp_lock时,我看到表确实已被锁定.但是,它使用Exclusive锁而不是更新锁锁定:
spid | dbid | ObjId | IndId | Type | Resource | Mode | Status
------------------------------------------------------------------
63 | 10 | 233208031 | 0 | TAB | | X | GRANT
Run Code Online (Sandbox Code Playgroud)
我怎样才能获得更新(U)锁?
我被要求展示Parallelism的好处和局限,并对其进行评估,以便在我们公司内部使用.我们主要是面向数据的业务,基本上从数据库加载对象,然后通过一些业务逻辑,显示给用户,然后保存回数据库.在我看来,管道中并没有太多可以从并行运行中获益,但对于这个概念来说还是比较新的,我可能完全错了.这条简单的管道是否会受益于并行运行?有没有关于如何实现这种编程风格的指导方针?
此外,是否有任何工具(最好是与VS2010一起提供)可以显示瓶颈出现的位置,并且能够直观地显示当我在运行给定量的循环的简单应用程序上单击"开始"时发生了什么(写成简单的数学循环,例如对于i作为整数= 1到1000 - 做一些计算)并行,然后串联?
我需要能够使用体面的分析工具来显示差异.
我在对话框类中有一个OnMove处理程序,它使用控件对象(即CButton)执行一些操作.我发现在调用对话框OnInitDialog方法之前调用此处理程序,因此当我尝试在子控件上调用方法时,我在调试中获得ASSERTS,因为控件尚不存在...它们是在OnInitDialog中创建的.
我希望能够检查两件事:
在这两种情况下,我都在寻找可以使用的类成员或方法调用结果.
有没有人知道如何通过Python 2.6及其标准库获取Windows(Samba)共享上的可用空间量?(也在Windows上运行)
例如
>>> os.free_space("\\myshare\folder") # return free disk space, in bytes
1234567890
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个函数,可以从webserive调用web方法,给出方法的名称和web服务的URL.我在博客上发现了一些代码,除了一个细节之外,这样做很好.它还要求提供请求XML.这里的目标是从Web服务本身获取请求XML模板.我确信这是可能的,因为如果我在浏览器中访问webservice的URL,我可以看到请求和响应XML模板.
这是以编程方式调用webmethod的代码:
XmlDocument doc = new XmlDocument();
//this is the problem. I need to get this automatically
doc.Load("../../request.xml");
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://localhost/dummyws/dummyws.asmx?op=HelloWorld");
req.ContentType = "text/xml;charset=\"utf-8\"";
req.Accept = "text/xml";
req.Method = "POST";
Stream stm = req.GetRequestStream();
doc.Save(stm);
stm.Close();
WebResponse resp = req.GetResponse();
stm = resp.GetResponseStream();
StreamReader r = new StreamReader(stm);
Console.WriteLine(r.ReadToEnd());
Run Code Online (Sandbox Code Playgroud) 这是在BFPRODATTRASSOCIATION(value,attributeid)include(productid)上创建索引创建索引idx_ncl_2的查询
BFPRODATTRASSOCIATION的表结构
ProdAttrAssociationId bigint no 8
ProductId bigint no 8
AttributeId bigint no 8
Value varchar no 4096
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
最大密钥长度为900字节.索引'idx_ncl_2'的最大长度为1237字节.
我必须在此列上创建一个非聚集索引.有没有办法我可以为数据类型为varchar且大小大于900的列创建索引.
请建议.
我正在使用MS UnitTesting并试图找到我的第一次单元测试.似乎我的所有单元测试都是从创建相同的几个对象开始的......
[TestMethod]
CanCreateOrder()
{
<create an order>
...
}
[TestMethod]
CanSetOrderDeliveryAddress()
{
<create an order>
<create an address>
order.DeliveryAddress = address;
...
}
[TestMethod]
CanDispatchAnOrder()
{
<create an order>
<create an address>
order.DeliveryAddress = address;
order.Dispatch();
...
}
Run Code Online (Sandbox Code Playgroud)
...等等
这是正常的,还是我的想法错了?我认为每个测试都应该是独立的,但是如果Dispatch()没有那个隐含地依赖CreateOrder并且SetDeliveryAddress已经通过测试怎么可能呢?
问题的第二部分,如果上面的方法看起来不错,我应该使用工厂或其他东西在我的测试项目中实例化这些对象吗?我不确定测试项目是否应该只包含测试类/方法,或者也可以添加一堆帮助程序.
当我希望它们产生相同的结果时,我有两个SQL查询产生不同的结果.我试图找到没有相应位置的事件数.所有位置都有一个事件,但事件也可以链接到非位置记录.
以下查询产生的计数为16244,即正确的值.
SELECT COUNT(DISTINCT e.event_id)
FROM events AS e
WHERE NOT EXISTS
(SELECT * FROM locations AS l WHERE l.event_id = e.event_id)
Run Code Online (Sandbox Code Playgroud)
以下查询生成计数0.
SELECT COUNT(DISTINCT e.event_id)
FROM events AS e
WHERE e.event_id NOT IN (SELECT l.event_id FROM locations AS l)
Run Code Online (Sandbox Code Playgroud)
以下SQL对数据集进行了一些摘要
SELECT 'Event Count',
COUNT(DISTINCT event_id)
FROM events
UNION ALL
SELECT 'Locations Count',
COUNT(DISTINCT event_id)
FROM locations
UNION ALL
SELECT 'Event+Location Count',
COUNT(DISTINCT l.event_id)
FROM locations AS l JOIN events AS e ON l.event_Id = e.event_id
Run Code Online (Sandbox Code Playgroud)
并返回以下结果
Event Count 139599 …