我正在尝试使用Mongoose更新现有记录.插入是正常但不是更新.
这是我的片段:
app.post('/submit', function(req, res) {
var my_visit = new models.visits({
date: req.body.visit_date,
type: req.body.visit_type,
agency: req.body.visit_agency,
city: req.body.visit_city,
url: req.body.visit_url,
note: req.body.visit_note
});
// INSERT
if(req.body.id == 0) {
my_visit.save(function(err) {
if(err) { throw err; }
console.log('added visit');
res.redirect('/');
});
} else { // UPDATE
var upsertData = my_visit.toObject();
console.log(req.body.id); // OK
models.visits.update({ _id: req.body.id }, upsertData, { multi: false }, function(err) {
if(err) { throw err; }
console.log('updated visit: '+ req.body.id);
res.redirect('/');
});
}
})
Run Code Online (Sandbox Code Playgroud)
回应是Mod on …
我在Pycrypto中遇到了此方法,该方法用于生成随机字节:
from Crypto import Random
Random.get_random_bytes(5)
Run Code Online (Sandbox Code Playgroud)
我想知道此方法与如下所示的简单生成器有何不同:
import random
def get_random_bytes(N):
ASCII = "".join(chr(x) for x in range(255))
return "".join(random.choice(ASCII) for _ in range(n))
Run Code Online (Sandbox Code Playgroud)
注意:我的直觉是Pycrypto方法在密码学上更“合理”。查看random文档,它说它基于周期为的生成器2**19937-1。查看Random.get_random_bytes,它指出它能够生成加密强度高的字节。这意味着什么?
当然,我希望使用库实现,而不是我自己的库实现。我只想了解其背后的密码学概念。
类似问题:在 Android Studio 中的 Android Instrumentation 测试和单元测试之间共享代码
我的设置如下:
src/test包含单元测试的文件夹。这些可以是 Java 或 Kotlin 类src/androidTest包含仪器测试。这些也可以是 Java 或 Kotlin 类src/sharedTest 是一个文件夹,其中包含一堆在单元测试和仪器测试之间共享的实用程序。这种共享在 gradle 中定义为:
sourceSets {
test.java.srcDirs += 'src/sharedTest/java'
androidTest.java.srcDirs += 'src/sharedTest/java'
}
Run Code Online (Sandbox Code Playgroud)
这允许任何Java类在src/test或src/androidTest访问 utils。但不是 Kotlin 单元测试。我的假设是它们没有添加到 sourceSets 中。
我的问题是:我怎样才能添加它们?我试过:
sourceSets {
test.kotlin.srcDirs += 'src/sharedTest/java'
}
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用。
是否可以使用注释(在字段级别)为字段提供描述?
我知道我可以使用description方法
.andDo(document("index", responseFields(
fieldWithPath("contact").description("The user's contact details"),
Run Code Online (Sandbox Code Playgroud)
但是我更希望将该描述与字段定义一起放在我的响应对象中。
class IndexResponse {
//The user's contact details
String contract;
}
Run Code Online (Sandbox Code Playgroud)
我知道我可以生成约束描述(http://docs.spring.io/spring-restdocs/docs/current/reference/html5/#_using_constraint_descriptions_in_genic_snippets),但是它仅生成验证注释的描述。
我正在寻找来自Swagger的https://github.com/swagger-api/swagger-core/wiki/Annotations#apimodelproperty之类的东西。
我目前有两个活动:MainActivity和DisplayActivity.当我运行我的应用程序并旋转模拟器时,活动被销毁.当我旋转模拟器时,如何确保我的活动不会被破坏?