属于 Geek 的写作社区,分享、学习、交流技术话题。

#Ruby on Rails
Rei
·

Turbo frame 的 lazy loading 会在什么时候执行

最近 GeekNote 发现了一个 Bug,所有未登录用户在访问文章页面时会跳转到登陆页面。这看起来就像那些封闭花园式的发布平台那样,导致流失了很多潜在用户。 经过调试,我发现 Bug 是由这段...
Rei
·

用 Puppeteer 生成网页预览图

问题 现在社交网络一般都支持网站设置预览图,有预览图的网页能更占据更大的展示空间,提高点击率。 GeekNote 此前已支持作者自己设置文章封面,并且默认将封面设为预览图。但不是所有作者都有空设...
Rei
·

用 Postal 搭建邮件服务器

最近我用 Postal 搭建了一个邮件服务器,体验比想象中更好,迫不及待分享一下经验。 为什么要搭建邮件服务器 发邮件是 Web 服务常见的需求,例如账号验证,密码重置等等。一般情况下推荐使用第...
Rei
·

Rails 7 Turbo 环境集成 reCAPTCHA 的方法

最近有人反馈 GeekNote 的注册流程体验很差(#23),我调试之后发现之前集成 reCAPTCHA 的代码有错,会导致验证经常失败。解决的过程记录如下。 问题 reCAPTCHA 是 Go...
qichunren
·

Hotwire学习记录(1):TURBO_STREAM 类型的请求

在表单提交表单后,在控制台看到有如下的请求日志: Started POST "/posts" for ::1 at 2022-07-16 22:00:44 +0800 Processing by...
favorite 3
comment 3
Rei
·

Rails 社区遇到了真正的危机

堡垒最容易从内部攻破。 —— 列宁 Rails 社区其实一直以来都有不少唱衰,有说 Ruby 已死的,有说 Rails 无法扩展的,有说 Rails 已经落后于前端开发模式的……我一直不以为...
favorite 8
comment 4
Rei
·

在 Hotwire Turbo 链接跳转时保持窗口滚动位置

GeekNote 使用了 Hotwire 的 Turbo,有些地方需要用到 Tab 导航。我希望在切换 Tab 的时候保持页面滚动的位置,避免页面跳动。 经过搜索,发现 Hotwire 有个 I...
Rei
·

如何从 Webpacker 切换到 CSS/JS bundling

最近 Rails 7 正式发布,其中一个引人注目的特性是 CSS/JS bundling,用于取代 Rails 6 的 Webpacker。我在之前的文章中介绍过新的方案带来什么变化。 现在 R...
favorite 2
comment 0
Rei
·

Rails 7 前端方案前瞻

自 Rails 6 引入了 Webpacker 以来,Rails 的前端部分就引发了很多吐槽。吐槽主要分两类: 未接触过前端深坑的人看到 Webpacker 引入的几百个依赖感到恐惧。 已经了...
favorite 2
comment 1
Mark24
·

Sinatra 的 app 模板,提供一些胶水代码支持类似 Rails 的体验

Sinatra 的 app 模板,提供一些胶水代码支持类似 Rails 的体验
Song Huang
·

后台系统重构 - 菜单同步

要做到新旧系统菜单完全一致,首先需要将旧系统菜单抽离出来,改成可配置形式。其次因为新系统是前端渲染形式,所以新系统菜单需要通过 API 获取。接下来详细介绍具体实现的要点,实现代码以框架 Rai...
Hooopo
·

TiDB & ActiveRecord ORM Integration Guide

最近为了调研 TiDB 与 ActiveRecord 的兼容程度,搭建了一个 CI 环境,用来跑 TiDB 和 ActiveRecord 的单元测试。把(TiDB 5.1,TiDB nightl...
鱼翅
·

从 Rails 说起的前端发展历程

前言 其实想写这篇文很久了…… 从毕业实习接触 Rails 到现在两年多了。一开始是基于 Rails 框架来给 Android 客户端提供 API 接口,后来也尝试在 Rails 上倒腾了一些前...
favorite 5
comment 4
Rei
·

Rails on Docker:Docker 入门

💡 Rails on Docker 系列文章是面向 Rails 程序员的 Docker 教程,描述了如何从开发环境到部署环境中应用 Docker。这是系列文章的第一篇。 什么是 Docker...
社区准则 博客 联系 反馈 状态
主题