rails5.2新特性--ActiveStorage, 使用80percent/rails-template

看guide,看ruby-China的好贴,看最新版的书上案例。前端


 

如下摘自https://ruby-china.org/topics/36666 做者lyfi2003 webpack

 

 用户对上传文件的要求体验:git

  1. 上传过程可预览,可裁剪
  2. 上传有进度
  3. 能直传到云端(例如又拍,七牛,阿里等云存储)

ActiveStoragegithub

  1. 直接支持直传
  2. 默认支持云端存储
  3. 一键安装

两个问题,须要⚠️:web

  1. 迁移成本,Rails 5.1 升级时须要仔细调整,例如将 carrierwave 改成 ActiveStorage
  2. ActiveStorage 与 ActionCable 相似,都是先后端紧急配合,并与 Rails 框架绑的很是深,对于通常工程师掌控它,并想有所定制并不过轻松。 
做者强烈推荐,必用.

 


5.2其余特色: 后端

Bootsnap 技术应用,Rails 服务启动速度节省 50%:

  1. 路径预扫描
  2. 编译过程缓存技术 


Rails5.2其余改进

1.加密配置文件支持。浏览器

使用Credentials。经过master.key和credentials.yml.enc加密配置,能够将关键的配置直接加入到版本控制中,解决一些配置问题。比以前的备份方案先进一些。缓存

2. Redis Cache Store内建支持(使用那个缓存存储器由使用者决定。)安全

3. webpacker升级支持。 (方便rails内安装前端的库)ruby

4. 增长HTTP/2的early hints特性。⚠️这个不懂。

零成本开启这个功能,让rails在HTTP/2支持的浏览器中加载的更快。

5.内容安全策略Content Security Policy。⚠️这个也不懂。

Rails 如今能够经过 DSL 语法定义内容安全策略,确保避免注入型漏洞,使得 Rails 应用更加安全。详见 PR和内容安全策略解释

 

总结:

5.2发布的核心就是完善上传功能的内建支持,以及速度一项的改进,加载更快,启动更快。

升级使用:rails app:update开始升级。 

 

开全新的rails5.2 做者推荐中国玩家使用 80percent/rails-template,更快更好地调整好默认配置。
 



/rails-template

https://github.com/80percent/rails-template

 


gem source --add <url> --remove  #选项add是增长一个url源,remove是去掉。 

这里使用

$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/ 

结果使用gem sources --list查看。 

  


增长网址:gem.ruby-china.org 到你的bundle mirrors(可选)

使用bundle config -h能够找到👇的命令: 

 bundle config mirror.SOURCE_URL MIRROR_URL 

这里使用:

$ bundle config mirror.https://rubygems.org https://gems.ruby-china.org

 


 不懂⚠️:

⚠️这个不是很明白,要求初始化一个用户 Ensure you have already initialized a user with username: postgres and password: postgres( e.g. $ createuser -d postgres )

 


最后,新建app时,下载模版:

rails new -m <url>

选项-m是 应用程序模版。 

这里:

$ rails new myapp -m https://raw.github.com/80percent/rails-template/master/composer.rb
相关文章
相关标签/搜索