草庐IT

mongoose-schema

全部标签

ruby-on-rails - 从 schema.rb 生成迁移文件

我希望从schema.rb生成一个迁移文件。是否可以?目前我有很多迁移文件,想将所有内容合并到一个主迁移文件中。我还认为我可能在某个时候不小心删除了一个迁移文件。谢谢你的帮助 最佳答案 您可以将schema.rb复制并粘贴到迁移中并回溯它(例如更改日期),这样现有的数据库就不会运行它。创建此迁移后,您可以删除所有旧迁移。我不同意Andrew不应该删除迁移的观点。迁移总是基于模型类的变化而意外中断,修复它们非常重要。由于我确定您正在使用版本控制,因此如果您需要它们以供引用,您可以随时回顾历史。

ruby-on-rails - rake db :migrate db:reset and db:schema:load之间的区别

rakedb:migrate和rakedb:reset之间的区别对我来说非常清楚。我不明白的是rakedb:schema:load与前两者有何不同。只是为了确保我在同一页面上:rakedb:migrate-运行尚未运行的迁移。rakedb:reset-清除数据库(大概是做一个rakedb:drop+rakedb:create+rakedb:migrate)并在新数据库上运行迁移。 最佳答案 db:migrate运行尚未运行的(单个)迁移。db:create创建数据库db:drop删除数据库db:schema:load在schema.

javascript - 将键/值对添加到返回的 Mongoose 对象

我有检索Mongoose对象的代码,然后使用stripeCustomerId(存储在文档中)检索Stripecustomer对象(通过nodejsstripe)。然后我想将条纹customer对象附加到我的Mongoose对象。exports.getPlatformByCId=(cId)=>{returnnewPromise((resolve,reject)=>{Platform.find({clientId:cId}).then(response=>{letuser=response[0];stripe.customers.retrieve(user.stripeCustomerId

javascript - Mongoose 的循环引用

我有以下Mongoose模式代码varEstacionSchema=newSchema({nombre:{type:String,required:true,unique:true},zona:{type:String,required:true},rutas:[Ruta]})mongoose.model('Estacion',EstacionSchema)varRutaSchema=newSchema({nombre:{type:String,required:true,unique:true,uppercase:true},estaciones:[Estacion]})mongoo

javascript - 如何使用 JSON Schema 验证表单?

我想使用描述它的JSON模式来验证来自HTML表单的输入。我正在使用GaryCourt的JSV来验证它,它始终返回错误。我使用JSONSchemaLint(jsonschemalint.com)检查我的模式。在Chrome模式中,Lint告诉我我的模式有效,但在Firefox、Safari和Opera中,该网站告诉我我的模式是有效的JSON但不是有效的JSON模式。谁能帮我吗。我的架构如下。UPDATE8/6/13感谢您的所有回复。我更新的JSON(更新如下)现在可以在所有浏览器中验证。但是我仍然从JSV收到以下错误:Report{errors:Array[1],validated:O

javascript - 如何根据 "schema"过滤JSON对象

我用node.js和express/koa构建了一个RESTfulapi。我想过滤JSON数据输入-出于安全原因以及仅具有所需的业务特定属性。过滤后进行特定于业务的验证。如何丢弃不需要的JSON/JS对象属性-即不在我的数据库架构中的属性以及空属性?根据这个定义模式和过滤器?使用例如https://github.com/alank64/json-schema-filter是否有可用的可配置过滤? 最佳答案 我认为joi是一个很好的验证和规范化库。有时你也可以逃避像_.pick这样简单的事情来自lodash/下划线。

javascript - 如何更新 mongoose 中查询前或查询后 Hook 的文档?

我正在尝试更新查询Hook上的字段。例如:varmySchema=newSchema({name:String,queryCount:{type:Number,default:0}});我想在每个find或findOne查询上增加和更新queryCount字段。mySchema.post('find',function(doc){//hereisthemagic});我尝试了一些事情,但到目前为止没有成功。我可以在模型中实现它还是必须在Controller中实现? 最佳答案 你想要的是一个postinithookmySchema.p

javascript - Mongoose 每次使用预保存钩子(Hook)保存时都会更改密码

我正在使用带有bcrypt的预保存Hook来加密系统上的密码。它在创建或更改密码时工作正常。问题是每次我更改并保存不同的字段(例如电子邮件)时,它似乎都会重新加密密码。可能更容易用代码解释。这是模型:constUserSchema=newSchema({email:{type:String,required:true,lowercase:true,unique:true,trim:true},password:{type:String,required:true}})还有钩子(Hook):UserSchema.pre('save',function(next){constuser=th

javascript - Mongoose - TypeError : object is not a function

我正在尝试将Mongoose模型从我的model/user.model.js文件导出到我的服务器目录中的server.js文件。模型/user.model.jsvarmongoose=require('mongoose');varSchema=mongoose.Schema();varUserSchema=newSchema({instagramId:{type:String,index:true},email:{type:String,unique:true,lowercase:true},password:{type:String,select:false},userName:St

javascript - 修改 Mongoose 对象文字结果不起作用

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:Whycan’tyoumodifythedatareturnedbyaMongooseQuery(ex:findById)首先,我对mongoDB进行查询,获得了所有正确的结果,但只有对对象文字的小修改不起作用。我正在尝试做的是为评论添加新字段。我尝试使用DBref方法,但它不起作用,所以我现在进行了2次查询。varquery=Rss.findOne({_id:itemId});query.exec(function(err,feed){if(!err&&feed.comments){console.log(f