当前位置: 首页 > news >正文

聊城手机网站公司做微网站用哪个平台

聊城手机网站公司,做微网站用哪个平台,如何对网站进行爬虫,wordpress cdn ip目前的插件能够自动生成egg的crud的都不太好用 我们自己写一个吧 ejs模块 也方便定制 安装依赖 npm install ejs --save ejs 是一个简单易用的模板引擎,常用于 Node.js 应用程序中 在项目根目录下创建 template/controller.ejs 模板文件 use strict;const Co…

目前的插件能够自动生成egg的crud的都不太好用 我们自己写一个吧 ejs模块 也方便定制 

安装依赖

npm install ejs --save

ejs 是一个简单易用的模板引擎,常用于 Node.js 应用程序中

在项目根目录下创建 template/controller.ejs  模板文件

'use strict';const Controller = require('egg').Controller;class <%= name %>Controller extends Controller {async index() {const { ctx } = this;const <%= name %>s = await ctx.model.<%= name %>.findAll();ctx.body = <%= name %>s;}async create() {const { ctx } = this;const <%= name %> = await ctx.model.<%= name %>.create(ctx.request.body);ctx.body = <%= name %>;}async show() {const { ctx } = this;const <%= name %> = await ctx.model.<%= name %>.findByPk(ctx.params.id);ctx.body = <%= name %>;}async update() {const { ctx } = this;const <%= name %> = await ctx.model.<%= name %>.findByPk(ctx.params.id);await <%= name %>.update(ctx.request.body);ctx.body = <%= name %>;}async destroy() {const { ctx } = this;const <%= name %> = await ctx.model.<%= name %>.findByPk(ctx.params.id);await <%= name %>.destroy();ctx.status = 204;}}module.exports = <%= name %>Controller;

在项目根目录下创建 template/gen-controller.js  模板生成执行文件

个人习惯 model大写  其他层文件小写 

const fs = require('fs');
const ejs = require('ejs');
const path = require('path');const name = process.argv[2]; // 从命令行参数获取控制器名称
const template = fs.readFileSync(path.join(__dirname, 'controller.ejs'), 'utf-8');// 函数用于将字符串的首字母大写
function capitalizeFirstLetter(str) {return str.charAt(0).toUpperCase() + str.slice(1);
}let capitailze_name = capitalizeFirstLetter(name);const content = ejs.render(template, { name: capitailze_name });fs.writeFileSync(path.join(__dirname, `../app/controller/${name.charAt(0).toLowerCase() + name.slice(1)}.js`), content, 'utf-8');

上面的模板文件旨在生成restful接口  ,同时直接调用model ,在一些不复杂的场景中直接使用

配置路由文件app/router.js

// activationsrouter.resources("activations", "/activations", controller.activations)

最后 代码生成  restful的增删改查就直接生成好了 

node gen-controller.js activations

model层 通过 egg-sequelize-auto查询数据库直接生成  数据库表通过 npx 也是自动生成的 

总结 egg一整套从建表到CRUD 自动生成流程

  1. 创建迁移文件 执行 npx sequelize model:generate --name Activation --attributes activationCode:string,machineCode:string,activationVersion:string,email:string
  2. 执行迁移创建数据库表 npm run db 
  3. 通过数据库表再反向映射生成model层  npm run model
  4. 通过我们上面写的模板文件 node gen-controller.js activations 直接生成control层 ,自动完成了具有restful风格的CURD
  5. 后续写一个插件 完成上面的半自动流程 ,实现 定义完成数据库表 ,即而成crud

1-5有不懂的,可以看上一篇文章

http://www.yayakq.cn/news/606105/

相关文章:

  • 做自适应网站制作wordpress帖子添加代码
  • 做贸易上什么网站网站建设公司itcask
  • 字体排版网站公众号开发教程视频
  • 怎么给网站添加图标冲压加工瑞安有做网站吗
  • 个人网站首页设计优秀作品网页设计与网站开发试题
  • 泉州企业做网站英大保险公司官网
  • 临沂外贸网站建设北京网站建设哪家好
  • 莲塘网站建设购物网站开店免费
  • 做go kegg的网站做网站前期工作
  • photoshop做网站设计怎样看一个网站的浏览量
  • 免费购物网站系统张家港外贸网站制作
  • 南京企业网站制作哪家好网站百度seo推广怎么做
  • 深圳网站制作公司深圳app开发wordpress链接跳转
  • seo都用在哪些网站用django做的网站
  • 做文献综述的文章用什么网站广西网络网站建设
  • mip网站有什么好处关闭WordPress摘要
  • 百度推广官方网站登录入口哪些网站的登陆界面做的好看
  • 90设计网站最便宜终身搜索引擎营销的特点是
  • 电脑做网站服务器视频教程建设项目验收 网站
  • 网站备案名称中国开头佰维网站建设
  • 软件开发和网站开发难度如何卸载安装wordpress
  • vps搭建网站教程公司网站开发模板
  • 南宁市建设工程质量监督站网站描述出你要建设网站的主题
  • 濮阳微信网站开发个人网站的网页
  • 夏天做哪个网站致富下载网站程序
  • 自建网站的劣势深圳昊客网络推广
  • 东阳做网站的公司网站空间服务器费用
  • 深圳网站建设设计定做建设部网站查资质
  • 大众汽车网站建设产品展示的手机网站
  • 德江网站建设互联网平台