小编Nik*_*nko的帖子

如何在Perl中模拟Web服务器?

我们的Web应用程序与几个我们无法影响的Web服务一起工作.在每个工作流程(使用Selenium测试)之后,发生对Web服务的挂钩调用.我想嘲笑那个服务器.理想情况下,我想要一个HTTP服务器对象,我可以随意启动和终止,以及一个URL调度程序,它会在调用时调用我的测试中的某些子程序.

到目前为止,我发现HTTP::Server::Simple并且HTTP::Server::Brick我发现后者更具吸引力.你有其他内幕消息吗?

testing perl http mocking

4
推荐指数
1
解决办法
1992
查看次数

使用ORM与存储过程,矛盾?

我继承了一个严格使用存储过程来完成其工作的Web应用程序.我喜欢让前端开发人员无法破坏数据库的方法,但我已经厌倦了用纯SQL编写SP调用并希望有更好的东西.虽然我一直在寻找一个体面的ORM(在这种情况下用于Perl,但这与问题无关)并支持存储过程,但我意识到ORM可能与SP直接矛盾.

我的想法是,SP就像名字已经告诉我们的那样,程序,即程序Pascal式编程的代表,事实上,一个Web应用程序看起来与SQL-Server端的Pascal完全一样 - 很多功能,没有真正的命名空间.与此相反,我们试图完成大部分编程OOP风格(或功能,这是另一个主题),因此实际上,过程SP并不适合干净的对象层次结构.同时,关系逻辑可以干净地(通过ORM)转换为对象,但不是程序,这可能是大多数ORM不能很好地支持SP的原因(但我不是该领域的专家).在某种意义上,SP ORM.

所以这两个问题是:

  1. 我是否正确地假设在运行ORM时我们最好使用普通表?
  2. 市场上是否有任何"面向对象的存储过程",从关系模型构建?显然,有面向对象的数据库,但我对"服务器端的ORM"感兴趣.

sql oop orm stored-procedures

4
推荐指数
1
解决办法
970
查看次数

如何向将存储在数据库中的 Django 字段添加附加描述?

我想为我的表单中的输入字段提供上下文帮助(“名字”:“您的名字。如果您有多个,请输入全部。”)。我不想将它们硬编码在源代码中,而是希望通过管理界面使这些帮助文本可编辑。我的想法是以某种方式扩展字段类(包括类似于 的新属性verbose_name)并将其存储在数据库中(可能三列表表“模型、字段、帮助”就足够了)。

不过,我不知道这是否可行,或者以前已经这样做过。你?如果还没有,你能给我一些从哪里开始吗?

django django-models django-forms

4
推荐指数
1
解决办法
5397
查看次数

为什么我的Python正则表达式检查多个组花了这么长时间?

这个问题起源于Django URL解析器,但问题似乎是一般的问题.

我想匹配这样构建的URL:

1,2,3,4,5,6/10,11,12/
Run Code Online (Sandbox Code Playgroud)

我正在使用的正则表达式是:

^(?P<apples>([0123456789]+,?)+)/(?P<oranges>([0123456789]+,?)+)/$
Run Code Online (Sandbox Code Playgroud)

当我尝试将其与"有效"URL(即匹配的URL)匹配时,我得到即时匹配:

In [11]: print datetime.datetime.now(); re.compile(r"^(?P<apples>([0123456789]+,?)+)/(?P<oranges>([0123456789]+,?)+)/$").search("114,414,415,416,417,418,419,420,113,410,411,412,413/1/"); print datetime.datetime.now()
2011-10-18 14:27:42.087883
Out[11]: <_sre.SRE_Match object at 0x2ab0960>
2011-10-18 14:27:42.088145
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试匹配"无效"URL(不匹配)时,整个正则表达式需要一定的时间才能返回任何内容:

In [12]: print datetime.datetime.now(); re.compile(r"^(?P<apples>([0123456789]+,?)+)/(?P<oranges>([0123456789]+,?)+)/").search("114,414,415,416,417,418,419,420,113,410,411,412,413/"); print datetime.datetime.now()
2011-10-18 14:29:21.011342
2011-10-18 14:30:00.573270
Run Code Online (Sandbox Code Playgroud)

我假设regexp引擎中有一些东西在需要匹配几个组时极度减慢.这有什么解决方法吗?也许我的正则表达式需要修复?

python regex

4
推荐指数
1
解决办法
99
查看次数

如何在Perl中格式化特定于语言环境的数字?

我需要根据用户选择的语言格式化我的Web应用程序中的数字,例如德语中的1234.56 ="1.234,56".类似的东西sprintf目前是不可能的,因为它们依赖于LC_NUMERIC(这对桌面应用程序IMHO是明智的)而且我必须在服务器上生成每个语言环境,这是不行的.我更喜欢使用CLDR的格式化字符串,但没有找到合适的模块.我想拥有的是一个简单的说法:

set_locale("de_DE");
print format_number(1234.56);
Run Code Online (Sandbox Code Playgroud)

如何正确地做到这一点?

formatting perl numbers

3
推荐指数
1
解决办法
1264
查看次数

平等比较 - 任何更健全的方式?

如何实现这种相等比较是一种理智的java方式?

boolean x = (a == b) || (a.equals(b))
Run Code Online (Sandbox Code Playgroud)

我想确保两个对象的内容相等但null也可以,即两者都可以为null,因此是相等的.

更新:为了清楚,我必须多次实现这种比较,并且不希望每次都复制和粘贴这些东西,特别是对于长度的对象名称.使用'a'和'b'它看起来小而简单,但往往会增长...我想知道我是否缺少一些现有的Java功能.

java comparison

2
推荐指数
4
解决办法
393
查看次数

在单个服务器上测试多个开发人员对Sharepoint的部署

我们从一个三人小组开始进行Sharepoint开发,目前正在建立我们的开发环境.我们希望避免为每个开发人员安装Server 2008,因此已经设置了一个终端服务器,使用远程Windows在每个开发人员的计算机上启动VS2008实例.现在我们想分开开发人员的测试环境(即每个开发人员的不同站点收集),但已经意识到需要将程序集安装到GAC中以在网站上正确显示.但由于AFAIK只有一个GAC,开发人员无法独立测试他们的东西.

有没有办法在没有安装一堆2008服务器的情况下创建单独的测试环境?

deployment sharepoint wss

1
推荐指数
1
解决办法
1312
查看次数

TortoiseSVN兼容模式

我们的代码是在Windows上开发的(企业要求),但它在Linux服务器上运行.因此,我们正在使用带有SVN结账的Samba共享.不幸的是,我们需要在服务器端使用一些使用SVN的脚本,但我们在服务器上的SVN是1.4,而我们在Windows客户端上的TortoiseSVN是1.5或1.6.基本上,使用TortoiseSVN对结账的任何操作都会升级结账的内部结构,因此不能再在服务器端使用,因为"客户端版本太旧了".

你知道如何解决这个问题吗?我所知道的唯一方法就是在客户端根本不使用SVN,但这样做会产生反作用.在服务器上升级SVN也是不可能的.还有其他可能吗?

svn tortoisesvn

1
推荐指数
2
解决办法
956
查看次数