围观 Forem 的升级,貌似挺闹心的,貌似 Gem 和特殊用法太多
https://github.com/forem/forem/pull/11333
Homeland 的经验,减少一些奇怪的用法,尽量 Follow Rails way,比如最近我去掉了:
当然,还有去掉他们一个重要原因是更新太慢,迟迟没跟进社区新版本。
此外,还去掉了:
另外,我司内部一个比较复杂的后台系统也升级到 Rails 6.1 了,比较顺利
Homeland 和 BlueDoc 升级 Rails 6.1 的 PR 大家有需要可以参考一下:
因为这两个项目测试覆盖率较高,所以基本上是直接
rails app:update
根据 Diff 更新默认的几个文件以后,再适当修正一下废弃 API 以及无法升级的 Gem
bulk_insert 可以改用 insert_all
方法代替了,bulk_insert 更新太慢了,我的项目里面都去掉了
https://api.rubyonrails.org/classes/ActiveRecord/Persistence/ClassMethods.html#method-i-insert_all
https://github.com/ruby-china/homeland/commit/eb95fc9200889c435ea7bfff5b5accd1a5041427
理解问题,Ruby 3 的 3x3 目标是:性能 3 倍于 Ruby 2.0,而不是 3.0 vs 2.7 或 2.6。
实际上有数据表明,这个目标已经快达到了(估计目前是 2.5x)
从目前我了解到的其他统计数据来看,3.0 vs 2.6 性能差异不明显
可以试试参考
config.action_dispatch.rescue_responses
https://github.com/rails/rails/pull/35753 https://guides.rubyonrails.org/configuring.html#configuring-action-dispatch
406 是正常的,Rails 的安全保护
感觉你时间都花在折腾 Vim 配置了
GitHub 出的
升级 6.1 可能最大的难点将是 Autoload mode 的变更,现在 zeitwerk
为默认的。如果你之前的项目的文件组织方式没有 Follow Rails 的约定,将会有困难。
Ruby China 已完成升级上线
Andrew Kane 好多产出
挺简单的,我们这边很多新手一周上手可以开始做项目
一直没空解决这个问题
用 Sidekiq 异步发送也可以有“立刻”的效果啊,你不用 Sidekiq 也没法“立刻”。
邮件发送本身需要一些时间的
这个对需求抠字眼了
git branch 看看是那个分支
其实本身你用法就是错误的,a
里面放 div
是错误的语法。Dom 解析器可能无法正确识别。
你可以换成 a > span
,来解决
你更新一下 homeland-docker,这个问题我之前修过了
没岗位,比较难坚持,还是挺难撑下去的。
我之前在阿里,Ruby 写了 3 年,能用的项目少,各方面原因都有,后面不得不写一些其他的,比如 Java、Node.js
然后看你说的,难道你作为 Rails 工程师,不会前端么?
这个看起来像是 GA 的初始化和 Turbolinks 的初始化冲突,是不是没改为 turbolinks:load
我分析了一下你的页面,是你的 HTML 结构有问题,外层那个 a
标签 CSS 盒子没撑开。
你试试给它们增加:display: block
样式,或者 clearfix
之类的东西。
我查查,貌似 event.target
这里需要优化一下
group_by(&method(:clean_name))
&method
这个用法学习了!
你这样,似乎 taggings
表没用处了
早期我做电影网站的时候,在 MongoDB 里面也做过类似这样的 Tag 存储方式,不过我是直接把 Tag 名称到业务表字段里面
现在回头看,直接存储 tag_name 似乎有些不妥,应该转成 tag_id 来存的
bookmark.countries = %w[中国 美国]
跟服务器没关系啊,服务器随时都可以换。
关键是 ORG 的域名不让备案