当前位置: 首页 > 编程笔记 >

ThinkJS中如何使用MongoDB的CURD操作

裴弘
2023-03-14
本文向大家介绍ThinkJS中如何使用MongoDB的CURD操作,包括了ThinkJS中如何使用MongoDB的CURD操作的使用技巧和注意事项,需要的朋友参考一下

前言

众所周知目前使用Node.js + mongodb已经成为很多公司的技术栈。ThinkJS其实也提供了对mongo的支持,虽然官方文档较少,但是保证了ORM的API的一致性,所以用起来需要查看基本的>Model api

基本的模型文件放在common/model下

获取列表

getList(q, page) { 
 return this.select();
 }

分页加条件搜索

search(q, page) { 
 if(q) {
  q = new RegExp(q,'i');
 }
 return this.where({'name':{ $regex: q}}).page(page, 20).countSelect();
 }

获取详情

getDetail(id) { 
  return this.where({'_id':id}).select(); 
 }

创建数据

addTag(tag) { 
 return this.add(tag);
 }

更新数据

updateTag(id,data) { 
 return this.where({'_id':id}).update(data);
 }

删除数据

 removeOne(id) {
 return this.where({'_id':id}).delete();
 }

这样你需要什么只需要调用相应模型的方法就好了。

一个简单的接口如下:

async createAction() { 
 let name = this.post('name');
 let contents = this.post('contents');
 // 获取模型实例
 let m = this.model('tag');
 let res = await m.addTag({
  'name': name,
  'contents': contents,
  'count': 0,
 });
 if(res) {
  this.success('');
 }else{
  this.apiErrorHandle(4000);
 }
 }
 ....

总结

以上就是这篇文章的全部内容改了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

 类似资料:
  • 本节将为您讲解如何对数据表进行快速的CURD操作: C 即 Create 创建 U 即 Update 更新 R 即 Read 读取 D 即 Delete 删除 我们首先定义一个数据模型,这个模型会自动关联gf_blog数据表,数据表中字段为:id、title、content、ctime、utime,分别是自动编号、文章标题、文章内容、创建时间、更新时间。 class BlogModel exten

  • 本文向大家介绍MongoDB中如何使用JOIN操作详解,包括了MongoDB中如何使用JOIN操作详解的使用技巧和注意事项,需要的朋友参考一下 前言 MongoDB是由C++语言所编写的一种面向文档的非关系型数据库(是一种NoSql数据库实现),也是介于关系型数据库和非关系型数据库之间的数据存储产品,而众所周知SQL与NoSQL最大的不同之一就是不支持JOIN,在传统的数据库中,SQL JOIN子

  • ThinkJS 是一个快速、简单的基于MVC和面向对象的轻量级Node.js开发框架,遵循MIT协议发布。秉承简洁易用的设计原则,在保持出色的性能和至简的代码同时,注重开发体验和易用性,为WEB应用开发提供强有力的支持。 thinkjs里面很多特性来源于ThinkPHP,同时根据Node.js的特点,使用了Promise, WebSocket等特性,让代码更简洁、优雅。 使用 ES6/7 特性来开

  • 本文向大家介绍yii的CURD操作实例详解,包括了yii的CURD操作实例详解的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了yii的CURD操作技巧。分享给大家供大家参考。具体分析如下: CURD是一个数据库技术中的缩写词,一般的项目开发的各种参数的基本功能都是CURD。它代表创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)操作。本文来讲讲Yii

  • 问题内容: 我有一个聚合管道,其中包括一个像这样的项目: 在mongo shell中可以正常工作。如何在Spring-Mongodb中使用Aggregation框架表达这一点?我见过ProjectionOperationBuilder,ExpressionProjectionOperationBuilder类型,但没有一个示例如何使用它们……有什么建议吗? 问题答案: 如果使用通过管道支持操作员的

  • 编辑-上下文:我正在使用Talend ETL工具,并在查询中使用ISODate或Date或new Date,如以下错误导致失败,因此我需要解决方法: 如果没有以下错误,我无法做到这一点: 大概是因为ETL工具调用: 考虑到我无法在com的查询中使用新日期()。mongodb。util。JSON。parse()方法,是否有解决方法? 我正在使用MongoDB v2.6.3,无法让$date运算符工作