我的公司有一个托管在Google App Engine上的应用程序,当我们无法使用您的域帐户的Google Apps设置Google Checkout帐户时,我已为其启用了结算功能.
所以我所做的是将公司的信用卡添加到我的个人Google Checkout帐户,并使用我的个人Checkout帐户支付GAE应用程序每周费用.
现在可以使用域帐户设置Google Checkout(也称为Google电子钱包),我想将我公司的GAE应用帐单转移到我使用公司的Google App域帐户创建的电子钱包/结帐帐户.
但是,我在应用程序管理控制台的" 结算设置"部分中没有看到任何明显的方法,文档仅提及如何将结算责任转移给其他人.
有人知道怎么做这个吗?
谢谢!
该文档的IN查询操作规定,这些查询被作为一个大的逻辑或运算平等查询实现:
qry = Article.query(Article.tags.IN(['python', 'ruby', 'php']))
Run Code Online (Sandbox Code Playgroud)
相当于:
qry = Article.query(ndb.OR(Article.tags == 'python',
Article.tags == 'ruby',
Article.tags == 'php'))
Run Code Online (Sandbox Code Playgroud)
我目前正在为GAE项目建模一些实体,并计划使用具有许多可能值的这些成员资格查询:
qry = Player.query(Player.facebook_id.IN(list_of_facebook_ids))
Run Code Online (Sandbox Code Playgroud)
哪里list_of_facebook_ids可能有数千件物品.
这种类型的查询是否能够很好地处理列表中数千个可能的值?如果没有,建议的方法是什么?
我Boolean在我的一个Parse实体上有一个列,我想查询将此列显式设置为false或保留为其默认undefined值的所有行.
我做不到equalTo('myBoolColumn', false),因为它不返回具有undefined此列值的行.
我宁愿不做notEqualTo('myBoolColumn', true),因为Parse文档指出notEqualTo查询效率不高,因为它们无法利用索引.
文档建议使用containedIn,但编写containedIn('myBoolColumn', [false, undefined])查询以实现预期结果感觉不对.
似乎notEqualTo布尔查询仍然可以编入索引,但我没有找到确认这一点的权威来源,我不知道如何测试此查询是否使用索引.
那么我应该使用哪一个:notEqualTo('myBoolColumn', true)或者containedIn('myBoolColumn', [false, undefined])?
使用NDB,可以为查询指定投影,允许限制为与查询匹配的实体检索的属性数.
但是,我在文档中找不到有关如何在使用时指定投影的内容ndb.get_multi(),它始终提取完整的实体.
有没有办法在使用时只获取某些属性ndb.get_multi()?
我有一个NDB模型,它暴露了一些实例方法来操纵它的状态.在一些请求处理程序中,我需要调用其中一些实例方法.为了防止put()在同一个实体上多次调用,我到目前为止使用的模式与此类似:
class Foo(ndb.Model):
prop_a = ndb.StringProperty()
prop_b = ndb.StringProperty()
prop_c = ndb.StringProperty()
def some_method_1(self):
self.prop_a = "The result of some computation"
return True
def some_method_2(self):
if some_condition:
self.prop_b = "Some new value"
return True
return False
def some_method_3(self):
if some_condition:
self.prop_b = "Some new value"
return True
if some_other_condition:
self.prop_b = "Some new value"
self.prop_c = "Some new value"
return True
return False
def manipulate_foo(f):
updated = False
updated = f.some_method_1() or updated
updated = f.some_method_2() or updated …Run Code Online (Sandbox Code Playgroud) 在Swift 1.2应用中,我有一些记录NSError对象的代码。在极少数情况下,我从Crashlytics收到崩溃报告,表明访问该localizedDescription属性导致崩溃。
这是我的错误记录功能:
func trackError(error: NSError)
{
var props = [String: AnyObject]()
// CRASHES HERE
props["NSErrorLocalized"] = error.localizedDescription
props["NSErrorCode"] = error.code
props["NSErrorDomain"] = error.domain
if let userInfo = error.userInfo {
props["NSErrorUserInfo"] = userInfo
}
self.trackEvent("Error", withProperties: props)
}
Run Code Online (Sandbox Code Playgroud)
这是Crashlytics报告的调用堆栈:
0 CoreFoundation CFHash + 129
1 CoreFoundation CFBasicHashFindBucket + 1204
2 CoreFoundation CFBasicHashFindBucket + 1204
3 CoreFoundation CFDictionaryGetValue + 106
4 CoreFoundation _CFErrorCreateLocalizedDescription + 266
5 Foundation -[NSError localizedDescription] + 82
Run Code Online (Sandbox Code Playgroud)
我在考虑直接访问NSLocalizedDescriptionKeyin error.userInfo而不是通过localizedDescription …
我正在考虑在一些大的属性上启用压缩(设置compressed = True)LocalStructuredProperty.
但是,这些是经常读写的实体,因此我担心编码/解码这些属性所需的额外CPU.
我想知道ndb的内置缓存系统是否会缓解这个问题?ndb是否缓存这些属性的压缩或未压缩数据?我意识到压缩总是会在每次写入时发生,但如果我在读取缓存实体时至少可以绕过解压缩,那么它可能是值得的.
在我的Parse Web应用程序中,我有一个管理员可以访问的用户管理页面.此页面允许管理员创建新的用户帐户.
要创建帐户,我使用Parse.User.signUp().
它运行良好,但它具有重置当前用户会话的令人讨厌的副作用,该会话注销创建新用户帐户的管理员.
这实际上是记录在案的行为User.signUp():
这将在服务器上创建一个新的Parse.User,并在localStorage中保持会话,以便您可以使用#current访问该用户.
但我想在不改变当前用户的情况下创建新用户.我该怎么做呢?