首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Coding
V2EX  ›  程序员

有没有什么做 CRUD 出活快的 web 框架或者代码生成工具

  •  2
     
  •   laobubu · 2018-05-01 14:53:46 +08:00 · 11338 次点击
    这是一个创建于 589 天前的主题,其中的信息可能已经有所发展或是发生改变。

    现在很多网站需求,十之八九都脱离不了增删改查( CRUD )和用户鉴权。 在高度相似的代码上,不值得浪费大量的时间。

    于是,各位有没有什么能够快速出活的,守护程序员发际线的 web 开发利器?

    先举个栗子

    Django (Python)

    能搞定后端,同时还能一定程度解决前端(界面或者 HTTP 接口)的框架。

    口号: The Web framework for perfectionists with deadlines

    1. 定义个 Model,各种字段,然后就可以生成数据库表
    2. 再用四五行代码,对应地定义个 ModelForm,然后就可以对用户提交的数据做验证、对应到 Model 上更新数据库(甚至还能生成个前端的表单界面)
    3. 而且还有开箱即用的用户管理、登录状态、权限管理等,基本满足常见场景
    97 回复  |  直到 2018-12-17 06:59:24 +08:00
        1
    dinghua   2018-05-01 15:18:59 +08:00
    Laravel + Backpack 了解一下
        2
    2ME   2018-05-01 15:24:48 +08:00 via Android
    YII
        3
    coderfox   2018-05-01 15:26:42 +08:00 via Android
    LazyREST
        4
    tinycold   2018-05-01 15:33:26 +08:00 via Android
    Eggjs
        5
    PressOne   2018-05-01 15:37:09 +08:00 via Android
    流行的常见 web 框架 + orm 都能实现楼主的要求
        6
    sammo   2018-05-01 15:48:58 +08:00
    搭车问一下有没有 java 的
        7
    williamgong   2018-05-01 15:51:21 +08:00
    springboot
        8
    Shynoob   2018-05-01 15:52:09 +08:00
    @sammo jeesite/jeeplus
        9
    BlkFHusky   2018-05-01 15:59:47 +08:00 via Android
    @sammo mybatic generator
        10
    WildCat   2018-05-01 16:03:50 +08:00
    Rails 是最快的,毋庸置疑。
        11
    cigarzh   2018-05-01 16:05:58 +08:00 via iPhone
    CRUD 你能快过 ror ?
        12
    Kongtou   2018-05-01 16:06:12 +08:00
    jhipster
        13
    guoyuchuan   2018-05-01 16:06:42 +08:00
    肯定有,我之前实习的公司,用的 ejb+glassfish+jsf+primefaces ;老板用 NetBeans 工具:在 NetBeans 里面建数据库表,表建好了就直接把代码 生成好了,增删查改,排序,分页,前台页面等所有代码全部就自动生成为一个完整的项目,配置这些都是自动生成好的,直接就使用,我们当时做一个模块,老板就直接五分钟不到就做好了,我们直接拿来就开始用了;这个自动化的工具(好像老板说的是一个框架)老板说是他们自己搞出来的,然后就见过那一次,以后都没有见过了
        14
    guoyuchuan   2018-05-01 16:08:22 +08:00
    用户鉴权这个好像就没有见过了
        15
    Biebe   2018-05-01 16:13:16 +08:00
    ror
        16
    crayygy   2018-05-01 16:43:53 +08:00 via iPhone
    一个已经搭建好基础功能的 RoR 能够在三分钟之内完成 CRUD 以及所有的验证功能
        17
    Cbdy   2018-05-01 16:44:47 +08:00 via Android
    每个语言最流行的 Web 框架都可以
        18
    hqs0417   2018-05-01 16:51:29 +08:00 via Android
    jhipster
        19
    rockyou12   2018-05-01 17:01:02 +08:00   ♥ 1
    我也想求个能快速做用户授权、验证的框架,crud 随便一个 orm 基本都不复杂,但简单能实现一个基于用户角色+任意验证机制的好像真的没见过。我是写 java 为主的,不管是 shiro 还是 sprng security 要不就是要自己写要不就是太复杂的……
        20
    prolic   2018-05-01 17:34:47 +08:00 via Android
    gii,ror 没用过不评价
        21
    loading   2018-05-01 18:38:12 +08:00 via iPhone
    看着我想去学 ror 了,借楼问一下,ror 部署麻烦吗?
        22
    wmhx   2018-05-01 18:46:14 +08:00
    yii 这类的
        23
    glues   2018-05-01 18:53:00 +08:00   ♥ 1
    @loading 有非常完善的部署工具,或者扔 docker 里
        24
    glues   2018-05-01 18:54:21 +08:00
    Rails 一出,这个话题可以终结了
        25
    chenuu   2018-05-01 19:52:07 +08:00
    java 的,sculptorgenerator 前前公司生产上用过
        26
    beginor   2018-05-01 20:18:36 +08:00 via Android
    难道不是 ASP.NET Core 么?
        27
    sticnarf   2018-05-01 20:36:00 +08:00   ♥ 1
    @rockyou12
    Rails + cancancan 了解一下?
        28
    woscaizi   2018-05-01 20:52:55 +08:00
    java 的话,很多代码生成开源项目可以用,只是一些因为封装得太好,所以上手需要时间。
        29
    soooon   2018-05-01 21:28:24 +08:00   ♥ 3
    这个 Enhancer 云开发平台真的有发言权: https://enhancer.io
        30
    fujie   2018-05-01 21:33:23 +08:00
    如果不挑剔的话,暂时没发现比楼上 Enhancer 更快,更强大的了。
        31
    fujie   2018-05-01 21:35:40 +08:00
    @glues 你确定仔细了解过 Enhancer: https://enhancer.io ?
        32
    981764793   2018-05-01 22:06:29 +08:00 via Android
    java 的话 jhipster,国内也有很多框架,只不过有的就像楼上也有人说过的封装得太多了学习成本高但没学习 jhipster 的价值高
        33
    glues   2018-05-01 22:07:29 +08:00
    @fujie 业务逻辑写在 SQL 里,连 UI 组件都绑定死了,只能呵呵了
        34
    rockyou12   2018-05-01 22:13:15 +08:00
    @sticnarf ruby 还是算了吧,国内生态太差了,又不可能拿来写大项目,重构要死人的
        35
    fwee   2018-05-01 22:18:52 +08:00
    用 rails,做最快的男人!
        36
    iRiven   2018-05-01 22:27:30 +08:00
    关注一下 表示非常需要类似的东西
        37
    sticnarf   2018-05-01 22:43:35 +08:00 via Android
    @rockyou12 如果只是一个 crud 网站的话,Rails 周边的生态不要太好,几乎什么需求都有 gem 帮你搞定了
    私以为以大多数项目的规模,Rails 完全可以胜任,GitHub 不还用着 Rails。动态语言写好测试的话,正常情况重构也不是那么可怕的事情。
    如果项目真的发展到 Rails 难以支持的地步时,自然有钱 /人来重构 /重写的 (逃
        38
    fujie   2018-05-01 22:43:40 +08:00
    @glues 什么叫做业务逻辑写 SQL 里? SQL 本来不就是业务逻辑么? UI 组件绑定与否,看你是要快,还是要个性化吧。你可以看看他们给的例子,如果给你做需要多久,比如那个会议室预订
        39
    CoderGeek   2018-05-01 22:48:05 +08:00
    sql 纯手写 别的倒还可以生成 。。。
        40
    atpking   2018-05-01 22:50:55 +08:00
    @rockyou12

    其实 ruby-china 我觉得应该是比较成功的中国技术类社区了吧
        41
    shijingshijing   2018-05-01 23:00:27 +08:00
    PHPMaker 了解下~
        42
    murmur   2018-05-01 23:07:44 +08:00   ♥ 1
    @fujie 是有那些公司的,一般比如说校验、比较、计算这些会在数据库里查询数据,然后在后端完成流程业务这些,有的是纯数据库存储过程,理由是所有代码不需要重启直接上线或者更新

    虽然看上去有点奇葩但是真有这么做的
        43
    rockyou12   2018-05-01 23:17:32 +08:00
    @sticnarf
    如果很熟悉 ruby,你说的没问题,但事实上国内用 ruby 的太少了,虽然社区还可以,但解决方案和其他语言比差多了。
    造成结果就是我只想写个网站,但既要学门新语言,还要学新框架、还要了解周边生态???综合成本反而更高了……

    而且除非我网站真就是写着玩,不然为啥要一开始就用个性能差一个数量级的语言,gitlab 最低 4g 都不一定流畅,我司生产环境的 gogs 到现在都只用了 500 多 m 的内存。真以为服务器不要钱啊……
        44
    Mac   2018-05-01 23:19:57 +08:00
    @soooon 话说最近打开有点卡,上海电信,载入时间要好几秒,打开后很顺畅,不知道为什么
        45
    qsnow6   2018-05-01 23:31:31 +08:00
    用自己擅长的语言,会 python 的话就用 django,PHP 就用 YII

    为了所谓的出活快,去学 rudy ——再熟悉框架,你确定这出活快?
        46
    glues   2018-05-02 00:05:38 +08:00 via iPhone
    @rockyou12 gogs 和 gitlab 的功能相比也差了一个数量级你怎么不说
        47
    glues   2018-05-02 00:10:20 +08:00 via iPhone
    @rockyou12 你的逻辑很奇怪,都不说跟谁对比,就一直说性能差,生态差,然后对比又不放在同一个维度
        48
    msg7086   2018-05-02 00:10:59 +08:00
    @qsnow6 很快啊。
    我 PHP 程序员入职以后被要求做 Ruby 项目,3 个小时学完 Ruby 入门,一星期开始用 Rails 撸项目了。
    撸完以后我就再也不写 PHP 了。
    初期写代码基本靠猜,猜着猜着就猜中了,猜不中的再去翻文档……
        49
    encro   2018-05-02 00:14:27 +08:00
    yii django ror 没有比这更快的 crud 了
        50
    iappled   2018-05-02 00:32:25 +08:00
    Rails
        51
    iappled   2018-05-02 00:33:12 +08:00
    @rockyou12 公司 8G 内存都出不起吗?
        52
    iappled   2018-05-02 00:33:39 +08:00
    @rockyou12 Gitlab 和 gogs 的功能可以是差很多,比如 gitlab ci 很好用
        53
    chniccs   2018-05-02 09:05:47 +08:00
    java 的话 jeecg
        54
    lujiajing1126   2018-05-02 09:07:11 +08:00
    Rails
        55
    nbuu   2018-05-02 09:12:15 +08:00
    play framework 1.x 版本 ,java
        56
    tydl   2018-05-02 09:12:58 +08:00
    thinkcmf 了解一下
        57
    BQsummer   2018-05-02 09:44:51 +08:00 via Android
    @sammo
    mybatis generator + 通用 mapper + pagehelper
        58
    crackhopper   2018-05-02 09:53:39 +08:00
    我用的 strapi,可以了解下。CRUD 和用户权限等 api 基本通过界面的点击就能完成。
        59
    hbsfxlz   2018-05-02 10:10:15 +08:00
    jfinal,还可以,有代码生成工具
        60
    jy00566722   2018-05-02 10:10:38 +08:00   ♥ 1
    Enhancer: https://enhancer.io
    真的不错。不用考虑前端与后台,要考虑的只是 SQL,其实有几条 SQL 呢,在 phpmyadmin 里弄好复制出来就行了。
        61
    ty89   2018-05-02 10:14:56 +08:00
    ROR 里的 Grape 了解一下? https://github.com/ruby-grape/grape
        62
    cai314494687   2018-05-02 10:19:21 +08:00
    yii2
        63
    wslsq   2018-05-02 10:20:18 +08:00
    https://github.com/z-song/laravel-admin
    laravel 的后台框架了解一下
        64
    nicevar   2018-05-02 10:46:05 +08:00
    @sammo #6 java 的话,QueryDSL 出活快,特别是做后台管理
        65
    maxmilia   2018-05-02 10:46:41 +08:00
    PHP Yii2 +1
        66
    yag   2018-05-02 11:03:14 +08:00
    基于自己的代码习惯,自己写了一套,因为我们公司用 iview,顺便也写了两篇 iview 的增删改查的模板,这个东西,自己抽出一天多的时间就能写一套的
        67
    wekw   2018-05-02 11:16:04 +08:00
    @WildCat Laravel 比 Rails 更快,但是更难学
        68
    oswuhan   2018-05-02 11:21:06 +08:00
    OSC 有个知名框架叫 jfinal,号称“极速 WEB + ORM 框架”,了解一下
        69
    tyrad   2018-05-02 12:42:06 +08:00
    yii 框架的 gii 功能
        70
    C0dEr   2018-05-02 13:26:06 +08:00
    我正在做,基于 springboot 用 kotlin 写的,后端基本已经成型,现在在搞前端的。
    功能类似与 abp 里面的功能,但是没有多租户
        71
    sirqiao   2018-05-02 13:46:54 +08:00
    asp.net mvc 了解一下?
        72
    lhc70000   2018-05-02 14:58:46 +08:00
    Rails。用过 Django,非常后悔(
        73
    9066v   2018-05-02 15:05:22 +08:00
    Laravel + Backpack +1
    这个上手挺快的
        74
    dishonest   2018-05-02 15:18:16 +08:00
    最强的是 Rails。然而由于人手原因,最后用了 django。
        75
    shuax   2018-05-02 15:22:04 +08:00
    xadmin 喽
        76
    timwei   2018-05-02 15:32:52 +08:00
    以前外包团伙内部维护了一个ˊ用 Thor 编写的 Rails template

    开局配置一个 yaml 文件宣告表结构、routes

    rails new 后数据库、常用 gems、restful api 会一并整好

    只剩下等设计完成前台设计后嵌回 erb 与服务器工作,做普通带后台的形象网站非常快
        77
    mosesyou   2018-05-02 15:54:15 +08:00
    java 也可以的,spring boot+模版引擎生成 crud 代码,前后端代码都能生成
        78
    mentalidade   2018-05-02 15:55:03 +08:00
    这么多推荐 Rails 的,吓得赶紧搜索了下,整个上海都没几家公司招人的。如果不是工作使用,各位大佬都是私下自学玩耍的吗?
        79
    enhancer   2018-05-02 16:00:06 +08:00
    欢迎尝试 Enhancer,只要打开浏览器,写写 SQL 就能一站完成全部开发: https://enhancer.io
        80
    yuhr123   2018-05-02 18:00:20 +08:00
    Ruby On Rails
        81
    zpvip   2018-05-02 18:12:22 +08:00
    在中国是个怪圈,

    老板招 php,python 或 java 等的人, 是因为学得人多,付的工资便宜。

    大家都学 php,python 或 java, 是因为招的老板多。工资高不高不是大问题,总比会 Rails 饿死强。

    会 Rails 的人一直在暗爽,自己玩,接外包或者远程都可以,少些人竞争工资会高很多。国内没机会,国外机会大把。
        82
    solobat   2018-05-02 18:16:31 +08:00
    eggjs 不错,像我这种业余后端,都能一键搞定部署。。
        83
    xudaiqing   2018-05-02 19:33:33 +08:00 via Android
    Couchdb 天生支持 crud
        84
    rockyou12   2018-05-02 20:33:43 +08:00
    @glues 应为 lz 是要多快好省做 crud,我问的也是 java 有没有类似的。但老是有很多人推 Ruby On Rails。没人说
    Ruby On Rails 开发不快,但要是算上学习成本还快吗?我直接用 Enhancer 那种代码都不写的不行啊。

    而且近些年新语言、新框架这么多,ruby 写得爽这点已经竞争力下降很多了。
        85
    bilibiliQQ   2018-05-02 21:35:41 +08:00 via Android
    楼主的 youtube-index 怎么不更新了呢😄😈😈😈😈
        86
    WildCat   2018-05-02 21:52:40 +08:00   ♥ 1
    @loading

    Rails 部署很简单,甚至比 PHP 一般的部署还容易。数量起来,配置 Capistrano 只需要大概三分钟,配置完之后,以后每次部署只需要 cap production deploy 这个命令就好了。

    如果你真的不想用 Capistrano 部署,还可以用普通的 Docker 部署。

    如果真的想最简单,还有 dokku 这样的工具可以部署小项目。



    @mentalidade
    @rockyou12

    Rails 国内生态确实有点不行,但是只是人气,项目质量来看是很不错的。比如 wechat-rails。跟其他语言框架的生态比,并不差。

    至于人气到底有多差,自己看看楼上有多少提到 Rails 的心里也许有个数。招聘来看似乎真的不算多。
        87
    chengxiao   2018-05-03 06:32:18 +08:00
    Django 这感觉已经出活很快了
    再快也差不了多少了
        88
    wuhanchu   2018-05-03 10:00:20 +08:00
    python 的 eve 了解下。
        89
    sammo   2018-05-03 15:45:41 +08:00
    @guoyuchuan 类似 Spring Roo ?
        90
    zengxiangjun   2018-05-03 15:51:52 +08:00
    @chengxiao 如果你用过 Enhancer,应该不会这样评价,了解下吧: https://enhancer.io
        91
    balbo   2018-05-03 16:01:42 +08:00
    @zengxiangjun Enhancer 做增删改查确实快
        92
    realkenshinji   2018-05-03 16:11:42 +08:00 via iPhone
    呃,nodejs 的 Loopback 完全可以满足楼主的要求
        93
    nmgwddj   2018-05-03 17:12:01 +08:00
    meteor
        94
    luodaoyi   2018-05-03 20:35:31 +08:00
    自己最熟的语言里面选一个框架。。
        95
    0w0b   2018-05-03 22:00:38 +08:00
        96
    zdcin   2018-05-24 14:31:46 +08:00
    我来安利个开发工具,http://www.listcode.cn 增删改查 代码生成器, 只需要提供数据库模型,前后端代码一键生成,支持 laravel,thinkphp,java,python flask tornado,nodejs,vue 等框架, 完成度高,翻页,多条件查询,外键编辑,输入检查都有了
        97
    jimchen9999   359 天前
    asp.net core
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1486 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 40ms · UTC 17:10 · PVG 01:10 · LAX 09:10 · JFK 12:10
    ♥ Do have faith in what you're doing.