我一直在使用sqlalchemy.orm中的@validates装饰器来验证字段,只要所有字段彼此独立,所有字段都很顺利,例如:
@validates('field_one')
def validates_field_one(self, key, value):
#field one validation
@validates('field_two')
def validates_field_two(self, key, value):
#field two validation
Run Code Online (Sandbox Code Playgroud)
但是,现在我需要进行一些验证,这需要同时访问field_one和field_two.看起来验证接受验证装饰器的多个参数,但是,它只会为每个参数运行一次验证函数,如下所示:
@validates('field_one', 'field_two')
def validates_fields(self, keys, values):
#field validation
Run Code Online (Sandbox Code Playgroud)
结果验证field_one的工作流程,然后验证field_two.但是,我想同时验证两者(一个简单的例子是断言field_one的值不是field_two的值,其中一个示例是禁止在图中的自循环,其中field_one和field_two引用节点,它正在边缘上执行验证).如何才能成为最佳方式?
目前正致力于在支持库中迁移到ActionBar.目前正在尝试迁移我的旧主题继承,Theme.AppCompat.Light.DarkActionBar但它并不是很顺利.
如果我在清单中应用主题就可以了:
<activity
android:name="com.fitsby.LoginActivity"
android:screenOrientation="portrait"
android:theme="@style/Theme.AppCompat.Light.DarkActionBar" >
</activity>
Run Code Online (Sandbox Code Playgroud)
但是我得到一个运行时错误,声明LoginActivity(ActionBarActivity的子类)必须有一个继承自Theme.AppCompat的主题,当我执行以下操作时:在styles.xml中:
<style name="AppTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:typeface">sans</item>
</style>
Run Code Online (Sandbox Code Playgroud)
并在清单中:
<activity
android:name="com.fitsby.LoginActivity"
android:screenOrientation="portrait"
android:theme="@style/AppTheme" >
</activity>
Run Code Online (Sandbox Code Playgroud)
任何想法为什么会发生这种情况?我没有看到任何问题,因为AppTheme显然继承了AppCompat主题之一.
我对在JUnit测试套件中模拟对象感兴趣,但是我只遇到使用依赖注入来注入模拟对象的模拟框架.但是,我希望能够模拟类/函数,而不必像python中的@patch()那样注入那个模拟对象.
琐碎的例子:
//dependency injection
public String bar(Foo foo) {
return foo.foo(); //just pass in mock Foo object
}
//.... onto test code
Foo mockedFoo = <Mocked Foo object>;
String response = bar(mockedFoo);
assertEqual(response, <mockedFoo return value>);
//case I am looking for
public String bar() {
Foo foo = new Foo(); //how to create mock object here?
return foo.foo(); //or simply how to mock a single function?
}
//... onto test code
<force the Foo class or foo method to be …Run Code Online (Sandbox Code Playgroud) 在编写一些单元测试时,偶然发现了一些有些令人困惑的事情:
blah = ['a', 'b', 'c']
blah[:-3] # []
blah[:-2] # ['a']
blah[:-1] # ['a', 'b']
blah[:-0] # []
Run Code Online (Sandbox Code Playgroud)
不能为我的生活弄清楚为什么blah[:-0] # []应该是这样的,模式肯定似乎应该是这样['a', 'b', 'c'].任何人都可以帮助解释为什么会这样吗?未能在文档中找到关于为什么会出现这种情况的提及.
在Android内核中做一些工作.我对git非常熟悉,但对repo并不是特别熟悉,所以我阅读了以下文档:http://source.android.com/source/version-control.html.从我的理解,以及试验主题分支,repo start BRANCH_NAME是相同的git checkout -b BRANCH_NAME.我的理解是正确的,还是有一些我遗漏的微妙,重要的细节?
我有一个名为"ID_KEY"的常量,它在3个单独的.m文件的顶部声明,其中没有包含其他文件.
声明如下:
#import "PublicGamesResponse.h"
NSString *const ID_KEY = @"id";
...
@implementation PublicGamesResponse
Run Code Online (Sandbox Code Playgroud)
而其他两个类也是如此.但是我收到一个链接器错误抱怨同名的多个定义(如果我要注释掉两个定义,这就消失了).
我的问题是为什么链接器抱怨这个呢?ID_KEY的每个定义都超出了所有其他定义的范围,所以我不明白为什么链接器在抱怨.
作为免责声明,我清理了项目并重新启动了xCode,并在网站上查找了类似的问题,但没有运气.
只是想知道在活动之间传递信息,将其添加到捆绑包或使用单例类来存储和访问此数据是一种更好的做法.我过去曾经使用过两个android方面的项目,但我现在正在开发一个规模大得多的android项目,所以我宁愿在开始时做正确的事情.
我的应用程序对用户进行身份验证,然后必须根据它的id进行各种查询.为了最大限度地减少活动之间的耦合,我认为只需将id添加到包中,然后让每个活动查询它所需的信息,这将是最好的选择; 然而,为了提高响应能力,我倾向于使用单例类来存储持久性信息,从而阻止了比需要更多的查询.
singleton android android-lifecycle android-activity android-bundle
嘿所有人刚刚开始涉足一些Python,以帮助处理一些工作中的脚本,但我似乎已经陷入了一个小问题.
我正在将Eclipse与pydev一起用于我的开发平台并针对python 2.7.3进行开发.我只是试图提示用户输入密码,使用:
password = getpass.getpass()
Run Code Online (Sandbox Code Playgroud)
当在终端/命令提示符下运行时,该行按预期工作,但是当我在Eclipse控制台中运行时,用户的输入不会像应该的那样隐藏.任何想法如何解决这一问题?
有时,我需要在ElasticSearch中为索引添加新字段.当我这样做时,我创建一个新索引,更新其映射,重新索引到这个新索引,然后在删除旧索引之前将别名与旧索引交换.
验证旧索引和新索引之间的计数是否相同是非常容易的,但是如果计数不匹配,那么它就是一个非常特别的过程,可以准确找到丢失的文档.是否可以快速区分两个指数(或指数中的文档ID)?
在python中编写一些单元测试并使用MagicMock模拟一个接受JSON字符串作为输入的方法.在我的单元测试中,我想声明它是用给定的参数调用的,但是我遇到了assert语句的问题,因为除了字符串的assert语句之外,dict中对象的排序无关紧要.我想在下面尝试实现的简化示例.
mock_funct = MagicMock()
# mocked function called elsewhere
expected = {"a":"a", "b":"b"}
mock_funct.assert_called_once_with(json.dumps(expected))
Run Code Online (Sandbox Code Playgroud)
上述可以通过或由于可能无法在字典中键的任意排序,当它被转储到JSON,即两个'{"a":"a", "b":"b"}'和'{"b":"b", "a":"a"}'有效转储,但人会失败,一个会传球,但我想编写测试,使要么会通过.
我正在围绕我的Storm拓扑构建监视服务,并且希望能够获得围绕各个时间窗口的失败元组的数量,类似于Storm UI在10米,3小时和1d窗口中显示失败元组的数量.
我的监控服务目前是用python构建的,所以如果答案涉及python库或某些与语言无关的东西,比如炮轰到CLI或命中REST端点,我们将不胜感激.我看了一下Storm CLI以及docs,但到目前为止,关于Storm UI实际上从哪里获取信息已经空手而归.
编辑: - 运行风暴版本0.8.2(不幸的是我无法控制),所以风暴-ui-rest-api(在0.9.2中发布)遗憾的是在升级之前不能选择.
昨天,New Relic开始提供NoClassDefFoundErrors没有安装New Relic的Android项目,这些项目与安装了New Relic的项目位于同一个工作区.我发现以下帖子建议升级到最新版本,我做了(虽然问题仍然存在):没有安装newrelic的应用程序上的NoClassDefFoundError
在升级之后,安装了New Relic的项目在构建阶段开始失败并出现以下错误输出:
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.util.ExceptionWithContext [2014-03-01 17:57:48 -
BumpyCard] Dx at
com.android.dx.util.ExceptionWithContext.withContext(ExceptionWithContext.java:46)
[2014-03-01 17:57:48 - BumpyCard] Dx at
com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.java:90)
[2014-03-01 17:57:48 - BumpyCard] Dx at
com.android.dx.command.dexer.Main.processClass(Main.java:487)
[2014-03-01 17:57:48 - BumpyCard] Dx at
com.android.dx.command.dexer.Main.processFileBytes(Main.java:459)
[2014-03-01 17:57:48 - BumpyCard] Dx at
com.android.dx.command.dexer.Main.access$400(Main.java:67) [2014-03-01
17:57:48 - BumpyCard] Dx at
com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:398)
[2014-03-01 17:57:48 - BumpyCard] Dx at
com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:245)
[2014-03-01 17:57:48 - BumpyCard] Dx at
com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:131)
[2014-03-01 17:57:48 - BumpyCard] Dx at
com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109)
[2014-03-01 17:57:48 - BumpyCard] …Run Code Online (Sandbox Code Playgroud) 在Flask应用程序上进行工作,该应用程序将具有要针对其进行身份验证的单独的路由类别:用户路由和主机路由(请考虑使用Airbnb风格的用户和主机存在很大差异)。
创建单个verify_password回调和login_required组合非常简单,但是这还不够,因为某些路由需要主机身份验证,而其他路由则需要用户身份验证。从本质上讲,我将需要为用户提供一个verify_password / login_required,为主机提供一个,但由于似乎回调相对于auth的作用域是全局的,因此我似乎无法弄清楚该怎么做。
python ×5
android ×3
flask ×2
apache-storm ×1
eclipse ×1
git ×1
ios ×1
java ×1
json ×1
junit ×1
list ×1
magicmock ×1
mocking ×1
newrelic ×1
objective-c ×1
pydev ×1
python-2.7 ×1
repository ×1
singleton ×1
slice ×1
sqlalchemy ×1
unit-testing ×1
validation ×1
xcode ×1