惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
阮一峰的网络日志
阮一峰的网络日志
IT之家
IT之家
人人都是产品经理
人人都是产品经理
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - 【当耐特】
WordPress大学
WordPress大学
Hugging Face - Blog
Hugging Face - Blog
博客园 - 叶小钗
罗磊的独立博客
宝玉的分享
宝玉的分享
月光博客
月光博客
V
V2EX
博客园 - 司徒正美
Vercel News
Vercel News
量子位
Y
Y Combinator Blog
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Tailwind CSS Blog
博客园 - Franky
小众软件
小众软件
I
InfoQ
A
About on SuperTechFans

Ruby on Rails: Compress the complexity of modern web apps

Safer to_i coercion, custom to_fs formats, and more! This Week in Rails: May 16, 2026 This Week in Rails: May 8, 2026 This Week in Rails: May 1, 2026 Active Record gets better every week Great big Rails World 2026 update: CFP, Corporate Support tickets, workshops Query command for database queries and more Explicit query: and body: kwargs for integration tests and more! Speedup ActiveRecord::LogSubscriber#sql_color and more! This Week in Rails: March 27, 2026 Rails Versions 8.0.5 and 8.1.3 have been released! Rails Versions 7.2.3.1, 8.0.4.1, and 8.1.2.1 have been released! This Week in Rails: March 20, 2026 Validate URI scheme in Action Text and more This Week in Rails: March 6, 2026 Planning Center is the newest Rails Foundation Contributing member Action Text gets Markdown conversion, editor links in devcontainers, and more! BARRA seeks Rails developer Joe Agliozzo is looking for a Rails developer The rise of lighttpd as the alternative web server When longer is better and more is more Snowdevil: First e-tailer on Rails Natural selection for frameworks in Ruby vs Java Address book tutorial in Portuguese Becoming a better programmer with Rails 10 Things Every Java Programmer Should Know About Ruby Really Getting Started in Rails Off the Treadmill, Onto the Rails Rails 0.9.5: A world of fixes and tweaks Rich clients with Rails and XUL
This week in Rails: http_cache_forever, AR::Base.suppress...
David Heinemeier Hansson · 2015-02-20 · via Ruby on Rails: Compress the complexity of modern web apps

Friday, February 20, 2015
Posted by claudiob

My Valentine’s Day letter to Ruby on Rails:

“Dear Rails, remember the first time we met?
You were just 1.2, and I was in an unhealthy relationship with Perl and PHP.

I saw you in the library and I immediately fell in love.
For seven years, you made my code more readable and my skills stronger.

You are the most beautiful framework and always will be.
I cannot wait to see you turn 5.0.” – Claudio

This Week’s Contributors

Apparently I’m not the only one in love with Ruby on Rails. 36 programmers contributed to Rails this week, 10 of them for the first time. Keep loving!

New Stuff

Add http_cache_forever to ActionController

The new method is perfect to cache results that are meant to never expire, such as static pages.

Add ActiveRecord::Type.register

You can now reference with a symbol any database type that is specific to your adapter, such as:
ActiveRecord::Type.register(:money, MyMoneyType)

Add ActiveRecord::Base.suppress

Wrapping a block with suppress will prevent any save operation from hitting the database. Check the PR for a real-world example.

Improved

Add :time option to ActiveRecord::Base.touch

You can now touch an ActiveRecord instance with a different time than the current time.

Removed

Removed RecordTagHelper

The helpers div_for and content_tag_for will be gone in Rails 5. Grab the record_tag_helper gem if you still need them!

If you ever used person.errors.get(:name) or person.errors[:name] to read an error message, you should now switch to person.errors.messages[:name]. add_on_empty and add_on_blank are gone too.

Update: you should be using person.errors[:name] after all! Use person.errors.add(:name, ...) to append.

Wrapping up

That’s all for This week in Rails. As always, there are more changes than we have room to cover here, but feel free to check them out yourself!

P.S. If you enjoyed this newsletter, why not share it with your friends? :) If you wish to be part of this project please don’t hesitate to contact Godfrey – there’re a lot of ways you could help make this newsletter more awesome!