我正在编写一个执行各种功能的Django应用程序,包括通过URL插入或更新新记录到数据库中.
因此,一些内部应用程序会发送请求/import/?a=1&b=2&c=3,例如.在视图中,我想创建一个新对象,foo = Foo()并将成员foo设置为request.GET字典中的数据.
这是我现在正在做的事情:
/import/?a=1&b=2&c=3foo = Foo()这是我到目前为止所得到的:
foo.a = request['a']
foo.b = request['b']
foo.c = request['c']
Run Code Online (Sandbox Code Playgroud)
显然这很乏味且容易出错.URL中的数据与对象的成员具有完全相同的名称,因此它是一个简单的1对1映射.
理想情况下,我希望能够做到这样的事情:
foo = Foo()
foo.update(request.GET)
Run Code Online (Sandbox Code Playgroud)
或者那种效果.
谢谢!
大多数编译器已经支持C++ 0x.你开始使用C++ 0x还是在等待x的定义?我必须对我的代码进行一些重构; 我应该开始使用新功能吗?
两个问题:
如何计算返回的值setInterval和setTimeout(用于清除计时器的值)?
这两个函数是否可以在运行时返回相同的值?例如:
var a = setInterval(fn1, 1000);
var b = setTimeout(fn2, 1000);
是否有可能a与b具有相同的价值?
第一个问题更多是关于我的知识问题,但第二个更重要.
我目前正在开始从灯具迁移到工厂并遇到一些测试数据库挑战.
当我运行整个测试套件时,数据库将被清除,并重新加载新的工厂生成的数据.但是,当我运行单个单元测试时,数据库不会清除旧值.
我可以在每个单独的测试之前运行rake db:test:prepare,但这会减慢我的开发速度.
这是我的测试设置:
self.use_transactional_fixtures = false
self.use_instantiated_fixtures = true
Run Code Online (Sandbox Code Playgroud)
例如:
require File.dirname(__FILE__) + '/../test_helper'
class LocationTest < ActiveSupport::TestCase
test "should require name to save" do
location = Factory.create(:location)
end
end
Run Code Online (Sandbox Code Playgroud)
将成功运行一次但在后续运行测试文件时失败.之前从未发生这种情况,因为测试夹具会在每次运行时加载.
我添加了工厂排序,但在每次运行期间只有序列属性:
Factory.define :location do |l|
l.sequence(:name) {|n| "place#{n}"}
l.street '123 N Pitt Street'
l.state_id 4
l.city 'San Francisco'
l.location_type_id LocationType::COMMON
l.shipper_id 1
l.zip 23658
end
Run Code Online (Sandbox Code Playgroud)
结果是:
trunk>ruby test\unit\location_test.rb
Loaded suite test/unit/location_test
Started
.
Finished in 0.162 seconds.
1 tests, 0 assertions, 0 failures, 0 errors
>ruby test\unit\location_test.rb …Run Code Online (Sandbox Code Playgroud) 除了Shoes之外还有什么方法可以开发和分发用Ruby编写的跨平台GUI桌面应用程序吗?
我开始相信_why应用程序的普遍缺陷在鞋子的情况下异常严重,而任何比双按钮形式更复杂的东西都是难以维护的.
RubyGTK,wxRuby等似乎很有前途,但它们并没有解决以不需要在用户计算机上预安装Ruby的方式分发应用程序的问题 - 而像ruby2exe这样的库似乎非常糟糕 - 日期和不完整.
一般来说 - 目前的时尚是什么?
BTW:如果在Python中有一个非常简单的解决方案,我可以考虑重做我在Python中所做的事情.
我有一些像这样的代码来接管空格键的功能:
$(document).keypress(function (e) {
e.preventDefault();
if (e.which == 32) {
// func
}
});
Run Code Online (Sandbox Code Playgroud)
不幸的是,这破坏了所有密钥的默认设置。
这:
$(document).keypress(function (e) {
if (e.which == 32) {
e.preventDefault();
// func
}
});
Run Code Online (Sandbox Code Playgroud)
不幸的是没有效果。
我怎样才能让它防止默认只有空格键?
谢谢。
我注意到"fieldset"标签在IE上呈现圆角边框(它在其他浏览器上呈现平方).
<fieldset>
<legend>My legend</legend>
</fieldset>
Run Code Online (Sandbox Code Playgroud)
但是,如果我在字段集上设置CSS样式,圆角消失!
谁知道为什么?如何保持圆角但有另一种边框颜色?
[编辑]:抱歉混淆,我不问如何在Firefox /其他浏览器上有圆角,我想知道如何在IE上保持圆角并有另一种边框颜色(边框颜色:红色;在fieldset将轮数更改为方块...).
我的Grails 1.1应用程序中有以下log4j配置
log4j = {
// Enable Hibernate SQL logging with param values
trace 'org.hibernate.type'
debug 'org.hibernate.SQL'
debug 'com.mycompany'
appenders {
console name: 'stdout', layout: pattern(conversionPattern: '%d{dd-MM-yyyy HH:mm:ss,SSS} %5p %c{1} - %m%n')
file name: 'hibeFile', file: 'hibe.log', layout: pattern(conversionPattern: '%d{dd-MM-yyyy HH:mm:ss,SSS} %5p %c{1} - %m%n')
}
// By default, messages are logged at the error level to both the console and hibe.log
root {
error 'stdout', 'hibeFile'
additivity = true
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行单元测试时,生成的唯一日志输出来自Hibernate类.我不明白为什么没有为我自己的类生成日志输出,即com.mycompany命名空间下的那些.奇怪的是,当我运行集成测试时,log4j输出正如预期的那样.
如果我转到单元测试的测试报告,然后单击"System.out"链接,我会看到以下格式的日志消息:
DEBUG (member.InviteServiceTests): Calling getInvite …Run Code Online (Sandbox Code Playgroud) HTTP规范声明:
10.4.2 401未经授权
该请求需要用户身份验证.响应必须包含WWW-Authenticate头字段(第14.47节),其中包含适用于所请求资源的质询.
如果我支持的唯一登录方案是OpenID(或CAS或OAuth令牌,等等),我应该在这个字段中添加什么?也就是说,如何指示客户端需要预先验证并创建会话,而不是尝试与每个请求一起发送凭据?
在您回答之前,"不要发送401;发送3xx重定向到OpenID登录页面",对于非HTML客户端呢?例如,Stack Overflow如何执行我的自定义软件可以与之交互的API?
有一段时间我现在有视觉工作室制作版本,其中包含各种额外的文件.我已经检查了我所知道的所有可能来自哪里的东西,而且我没有想法.
例如,我之前使用的是MbUnit,但现在我使用了nunit.我的项目都没有引用MbUnit,但是当我构建时它仍然出现在我的bin\Debug和bin\Release文件夹中.另外我的bootstrapper项目甚至没有引用任何使用测试框架的库,那么为什么它出现在BootStrapper\bin\Relase中呢?
一些(但不是全部)我的项目和vshost文件的pdb文件仍然被转移到bin directoreies,即使我使用Release目标构建.我根本没有弄清楚配置目标的定义!
有谁知道这些可能来自哪里?我必须缺少一些知识.
javascript ×2
python ×2
c++ ×1
c++11 ×1
css ×1
desktop ×1
django ×1
fieldset ×1
grails ×1
groovy ×1
html ×1
http ×1
http-headers ×1
jquery ×1
log4j ×1
logging ×1
openid ×1
ruby ×1
setinterval ×1
settimeout ×1
testing ×1
unit-testing ×1