每当我处理任何具有处理包管理的特定方式的系统时,我都会尝试坚持使用该标准来管理我的Perl模块."在罗马等时"
例如,在使用ActivePerl的Win32系统上,我将PPM用于所有内容并使用优秀的PPM :: Make.在RedHat系统上,我更喜欢使用RPM.
现在我正在研究Debian系统,并发现自己需要一种方法将任意CPAN或CPAN样式分配转换为deb.
Google展示了dh-make-perl,CPANPLUS :: Dist :: Deb和CPAN :: Packager :: Builder :: Deb等选项.
有这些不同工具经验的人是否有任何关于使用或避免使用的建议?
处理标准CPAN模块构建deb文件的最佳方法是什么?
我找到了Hans Dieter Piercy关于这个主题的文章 - 他根据自己的需要建议了CPANPLUS工具.在某些情况下,他建议使用dh-make-perl.Jeremiah Foster(撰写文章brian d foy指向)回应HDP并为dh-make-perl提供案例.
在idimmu.net上还有一篇文章描述了使用dh-make-perl.
ATM,我倾向于dh-make-perl,因为已经三次推荐(brian d foy作为Jeremy Foster的代理人,idimmu.net作者和hillu)vs CPANPLUS
当模型对象在外部更改时,我有一个关于更新QTreeView(或QAbstractItemView的任何子类)的简单问题.假设一个列表显示了QAbstractItemModel的子类,并且该模型的一个项在列表窗口之外被更改,我们希望用更改来更新列表.实现这样的目标的常用策略是什么?我查看了QAbstractItemModel的Qt文档,当模型中的数据发生变化时,有一个名为' dataChanged ' 的信号被(或应该)发出.但是由于这个信号(因为所有QAbstractItemModel函数/信号/槽)都与QModelIndex一起工作,而QModelIndex不是持久性的,正如文档明确指出的那样,我应该以某种方式存储我的数据到QPersistentModelIndex(es)的映射,所以当我的数据更改我将能够找到相应的QPersistenModelIndex并将其用作各种QAbstractItemModel函数的参数?这是QPersistentModelIndex用于什么?或者我错过了什么?
谢谢.
ps:我想我可以重新加载QTreeView,但后来我不知道哪些项目已扩展或哪些项目被选中.是否有策略来克服此问题并重新加载列表?
我正在使用DataMapper,一个用于ruby的开源ORM,而且我已经知道了.目前,DataMapper可以将战略预测加载(SEL)用于一对多关系,但不能使用多对多关系,其中发生N + 1个查询.我想破解正确的工作,但我找不到在哪里做.所以两部分问题:
我正在尝试在http://java.sun.com/docs/books/tutorial/jdbc/basics/connecting.html上关注Sun的JDBC教程.
它给出了以下示例代码:
DataSource ds = (DataSource) org.apache.derby.jdbc.ClientDataSource()
ds.setPort(1527);
ds.setHost("localhost");
ds.setUser("APP")
ds.setPassword("APP");
Connection con = ds.getConnection();
Run Code Online (Sandbox Code Playgroud)
此代码无法编译,因为DataSource除了getConnection()上次调用的方法之外,接口没有这些方法.
(这是javadoc:http: //java.sun.com/javase/6/docs/api/javax/sql/DataSource.html)
我错过了什么?
编辑:
我实际上是在尝试连接MySQL(com.mysql.jdbc)而我找不到javadoc.我会接受一个指向我的答案:
1)com.mysql.jdbc关于DataSource我能理解的文件,或者
2)为任何数据库提供了教程代码应该遵循的示例.
我正在使用这样的东西:
field1 = forms.ModelChoiceField(queryset=...)
Run Code Online (Sandbox Code Playgroud)
如何让我的表单显示所选的值?
我正在尝试在Ruby中创建一个HMAC,然后在PHP中验证它.
红宝石:
require 'openssl'
message = "A522EBF2-5083-484D-99D9-AA97CE49FC6C,1234567890,/api/comic/aWh62,GET"
key = "3D2143BD-6F86-449F-992C-65ADC97B968B"
hash = OpenSSL::HMAC.hexdigest('sha256', message, key)
p hash
Run Code Online (Sandbox Code Playgroud)
PHP:
<?php
$message = "A522EBF2-5083-484D-99D9-AA97CE49FC6C,1234567890,/api/comic/aWh62,GET";
$key = "3D2143BD-6F86-449F-992C-65ADC97B968B";
$hash = hash_hmac("sha256", $message, $key);
var_dump($hash);
?>
Run Code Online (Sandbox Code Playgroud)
对于Ruby,我得到:20e3f261b762e8371decdf6f42a5892b530254e666508e885c708c5b0bfc03d3
对于PHP,我得到:e5f6995ba1496b2fb144329b2d1b3b23c8fa3211486e57bfaec5d993a1da9d15
我和一些同事完全失去了,任何帮助都将不胜感激.
我有
编译和运行它的正确方法是什么?
有问题的ashx文件可以在这个zip中找到,并且是Tetris AI竞赛的演示应用程序.这是一个非常诱人的想法,即使它在很大程度上取决于运气,我想我可以借此机会学习一门新语言.
我知道在Oracle中我可以从插入的行中获取生成的id(或任何其他列)作为输出参数.例如:
insert into foo values('foo','bar') returning id into :myOutputParameter
Run Code Online (Sandbox Code Playgroud)
有没有办法做同样的事情,但使用ExecuteScalar而不是ExecuteNonQuery?
我不想使用输出参数或存储过程.
ps:我使用的是Oracle,而不是sql server!
我想验证一些函数测试中是否通过调用抛出异常get :methodname, :params.我曾经期望只是进行这个调用然后验证结果是500就足够了,但是一旦在get中达到异常,rails就会使测试失败.虽然我认为我可以继续将救援包裹起来并验证异常是自己抛出的,并且希望有更好的方法来做到这一点.
在测试中使用get时,抛出验证异常的最佳方法是什么?
我有一个Java应用程序,使用一个接收器通过套接字接收数据InputStreamReader.它从其getEncoding方法报告"Cp1252" :
/* java.net. */ Socket Sock = ...;
InputStreamReader is = new InputStreamReader(Sock.getInputStream());
System.out.println("Character encoding = " + is.getEncoding());
// Prints "Character encoding = Cp1252"
Run Code Online (Sandbox Code Playgroud)
这不一定与系统报告的代码页相匹配.例如:
C:\>chcp Active code page: 850
应用程序可以接收字节0x81,其在代码页850中表示字符ü.程序用代码页1252解释该字节,该代码页没有定义该值的任何字符,所以我得到一个问号.
通过在启动应用程序的批处理文件中添加另一个命令行选项,我能够为一个使用代码页850的客户解决此问题:
java.exe -Dfile.encoding=Cp850 ...
但当然,并非所有客户都使用代码页850.如何让Java使用与底层Windows系统兼容的代码页?我的偏好是我可以放在批处理文件中,保持Java代码不变:
ENC=... java.exe -Dfile.encoding=%ENC% ...