rails5.2新特性--ActiveStorage, 使用80percent/rails-template
看guide,看ruby-China的好贴,看最新版的书上案例。
以下摘自https://ruby-china.org/topics/36666 作者lyfi2003
用户对上传文件的要求体验:
- 上传过程可预览,可裁剪
- 上传有进度
- 能直传到云端(例如又拍,七牛,阿里等云存储)
ActiveStorage
- 直接支持直传
- 默认支持云端存储
- 一键安装
两个问题,需要⚠️:
- 迁移成本,Rails 5.1 升级时需要仔细调整,例如将
carrierwave改为 ActiveStorage - ActiveStorage 与 ActionCable 类似,都是前后端紧急配合,并与 Rails 框架绑的非常深,对于一般工程师掌控它,并想有所定制并不太轻松。
5.2其他特点:
Bootsnap 技术应用,Rails 服务启动速度节省 50%:
- 路径预扫描
- 编译过程缓存技术
Rails5.2其他改进
1.加密配置文件支持。
使用Credentials。通过master.key和credentials.yml.enc加密配置,可以将关键的配置直接加入到版本控制中,解决一些配置问题。比之前的备份方案先进一些。
2. Redis Cache Store内建支持(使用那个缓存存储器由使用者决定。)
3. webpacker升级支持。 (方便rails内安装前端的库)
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,更快更好地调整好默认配置。
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可以找到
rails5.2新特性--ActiveStorage, 使用80percent/rails-template的更多相关文章
- Credentials(Rails5.2新) 很基础的知识点,具体还要实操。
Credentials(Rails5.2新) 增加config/credentials.yml.enc 憎加config/master.key 移除了5.1使用的config/secrets.yml, ...
- SQL Server 2014 新特性——内存数据库
SQL Server 2014 新特性——内存数据库 目录 SQL Server 2014 新特性——内存数据库 简介: 设计目的和原因: 专业名词 In-Memory OLTP不同之处 内存优化表 ...
- ElasticSearch 5学习(10)——结构化查询(包括新特性)
之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...
- [干货来袭]C#6.0新特性
微软昨天发布了新的VS 2015 ..随之而来的还有很多很多东西... .NET新版本 ASP.NET新版本...等等..太多..实在没消化.. 分享一下也是昨天发布的新的C#6.0的部分新特性吧.. ...
- CSS3新特性应用之结构与布局
一.自适应内部元素 利用width的新特性min-content实现 width新特性值介绍: fill-available,自动填充盒子模型中剩余的宽度,包含margin.padding.borde ...
- 【译】Meteor 新手教程:在排行榜上添加新特性
原文:http://danneu.com/posts/6-meteor-tutorial-for-fellow-noobs-adding-features-to-the-leaderboard-dem ...
- 跨平台的 .NET 运行环境 Mono 3.2 新特性
Mono 3.2 发布了,对 Mono 3.0 和 2.10 版本的支持不再继续,而且这两个分支也不再提供 bug 修复更新. Mono 3.2 主要新特性: LLVM 更新到 3.2 版本,带来更多 ...
- Atitit opencv版本新特性attilax总结
Atitit opencv版本新特性attilax总结 1.1. :OpenCV 3.0 发布,史上功能最全,速度最快的版1 1.2. 应用领域2 1.3. OPENCV2.4.3改进 2.4.2就有 ...
- es6 新特性2
es6其他几个非常有用的新特性. import export 这两个家伙对应的就是es6自己的module功能. 我们之前写的Javascript一直都没有模块化的体系,无法将一个庞大的js工程拆分成 ...
随机推荐
- Spring Security使用心得
某天,你的客户提出这样一个需求,在点击购买商品的时,如果用户没有注册,并且用户没有账号,这时用户去创建账户,然后要直接返回到想购买商品的付款页面.你会该如何基于Spring Security实现? S ...
- <sourceDirectory>src/main/java</sourceDirectory> mvn 配置 包路径
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven ...
- code sandbox & mlflow
https://codesandbox.io/ https://www.jianshu.com/p/d70b25bf3cf4 https://my.oschina.net/u/2306127/blog ...
- JavaWeb404排错的小技巧
报这种错误,404后面什么都没有的话,就证明处理器映射器根据url找不到handler. 报这种错误,证明处理器映射器根据url找到了handler,转发的jsp页面找不到,说明jsp页面错了.
- PAT 1031 Hello World for U[一般]
1031 Hello World for U (20 分) Given any string of N (≥5) characters, you are asked to form the chara ...
- Hadoop mapreduce自定义分区HashPartitioner
本文发表于本人博客. 在上一篇文章我写了个简单的WordCount程序,也大致了解了下关于mapreduce运行原来,其中说到还可以自定义分区.排序.分组这些,那今天我就接上一次的代码继续完善实现自定 ...
- Bootstrap fileinput v2.0(ssm版)
前言bootstrap fileinput是一个很好的文件上传插件.但是官方不出api,这就尴尬了.百度一下,每个人写法都不相同,好多代码本身都是错的.我修改后才能跑起来.综上所述:所以今天我摸索了一 ...
- AISing Programming Contest 2019 Solution
A - Bulletin Board 签到. #include <bits/stdc++.h> using namespace std; int main() { int n, h, w; ...
- js正则表达式的使用详解
本文转自:http://www.jb51.net/article/39623.htm 1定义正则表达式2关于验证的三个这则表达式方法3正则表达式式的转义字符 1定义正则表达式在js中定义正则表达式很简 ...
- 项目中使用protobuf
在互种系统中数据通信或数据交换可以使用protobuf,他比json.xml的数据量要小一些. 另外因为消息要单独写一个.proto文件,来生成各平台的代码,所以对跨平台通信来说也比较友好. 一.使用 ...