ails 6.0 穩定版已正式發布,下面直接來看看有哪些值得關注的更新:用于處理電子郵件的 Action Mailbox、提供富本文編輯功能的 Action Text、對多數據庫的支持、對并行測試的支持、默認使用 Webpacker 作為 JavaScript 打包器,以及默認使用 Zeitwerk 作為 Ruby 代碼加載器。
Rails 團隊表示,雖然穩定版的發布日期比預期中晚了一些 —— 因為他們耗費了大量時間來檢查 Rails 6 的可靠性,但它的預覽版早已在 GitHub, Shopify 和 Basecamp 這些公司及其應用上的生產環境中運行了好幾個月。在此期間,團隊成員并未發現嚴重的問題,所以如果上面這些公司覺得沒問題,相信 Rails 6 也不會對大家的使用產生重大影響。
新功能簡介
Action Mailbox
Action Mailbox 將收到的電子郵件路由到類似控制器的郵箱中,以便在 Rails 中進行處理。它還集成了 Amazon SES, Mailgun, Mandrill, Postmark 和 SendGrid 的入口。我們還可以通過內置的 Exim, Postfix 和 Qmail 插件直接處理接收到的郵件。
Action Text
Action Text 為 Rails 6 提供了富文本內容展示及編輯功能,其中包括 Trix 編輯器,可處理從格式化到引用,到嵌入圖像和庫的鏈接等所有內容。Trix 編輯器生成的富文本內容保存在自己的 RichText 模型中,該模型與應用程序中的任何現有 Active Record 模型相關聯。使用 Active Storage 可自動存儲任何嵌入的圖像(或其他附件),并與包含的 RichText 模型相關聯。
對多數據庫的支持
通過此功能,開發者可方便地讓一個單一的應用程序在同一時間連接到多個數據庫。無論是希望將某些記錄分段到自己的數據庫中以進行擴展或隔離,或者因為正在使用副本數據庫進行讀/寫拆分以提高性能,開發者均可以執行此操作。
對并行測試的支持
通過此功能,開發者可以利用計算機中的所有核心已更快地運行大型測試套件。每個被測試對象都有自己的數據庫,并在自己的線程中運行 —— 因此不會出現一個核心干活,其他 9 個圍觀的情況(10 核的 iMac Pro 終于有用武之地了)。
另外要注意的是,Rails 6 現在要求 Ruby 2.5.0+。
更多內容請查看發布公告:「鏈接」
ails 5.0在2016年發布,睽違三年,Ruby on Rails創建人David Hansonn終于發布了Rails 6.0穩定版,這個版本帶來許多更新,包括讓開發者能夠更好地處理郵件的Action Mailbox,以及為文字屬性增加豐富編輯效果的Action Text,還有對多重數據庫連結的支持。而開發者要使用Rails 6.0,則需要先將Ruby更新到2.5.0以上版本才行。
David Hansonn提到,為了確保Rails 6發布版足夠穩定,他們多花了一些時間才發布,不過,GitHub、Shopify和Basecamp企業已經偷跑,在產品中使用了Rails 6預發布版。
Rails 6中加入了兩大新框架Action Text以及Action Mailbox。Action Text整合了Trix編輯器、Active Storage、圖像處理以及文字處理流程,可以讓開發者在應用程式中,加入豐富的文字屬性。Trix編輯器可以處理連結的格式、引用、列表,或是嵌入圖像等屬性,而在應用程式產生的RichText模型,將與現存Active Storage模型相關聯,所有嵌入圖片或是附件,將會交由Active Storage自動進行儲存。
Active Storage提供將檔案上傳到Amazon S3、Google Cloud Storage或微軟Azure Storage等云端儲存服務的功能,并將這些檔案附加到Active Record物件上,同時也可以用來開發和測試本地端磁盤功能,還能將檔案鏡像復制到從屬服務,進行資料備份或是搬遷。
而Action Mailbox是第二個被加入到Rails 6.0的新框架,能用來路由收到的電子郵件到類似控制器的郵件信箱,以便在Rails中進行處理,而其同時也附帶了Amazon SES、Mailgun、Mandrill、Postmark以及SendGrid的連結程序(Ingress)。當然,開發者也可以直接使用內建的Exim、Postfix和Qmail連結程序,處理收到的電子郵件。
David Hansonn提到,Action Mailbox、Action Text框架和Active Storage一樣,都是從項目管理軟體Basecamp 3借來,并經過改良后放在Rails 6中,雖然Rails本來就有使用Action Mailer處理郵件的方法,但是不夠靈活好用,也無法與新的電子郵件處理平臺整合,因此Action Mailbox將會取代Action Mailer,舊的框架將會在未來棄用。
Rails 6支持多數據庫連接,因此開發者可以在單個應用程式中,輕松地連接多個數據庫。David Hansonn表示,Rails 6會加入這樣的功能,是考察開發者可能有擴充儲存或是隔離資料的需求,或是想藉由在副本數據庫,分離讀取和寫入資料以提高儲存性能,應用程式便可以將資料紀錄拆分到不同的數據庫,但無論哪一種用途,Rails 6.0都有提供簡單易用的API,供開發者使用。
另外,Rails 6現在也支持平行測試,讓開發者可以利用電腦中的所有核心,以更快地速度執行大型的測試套件。現在每個測試工作程序都能使用專屬的運算資源,包括獨立的數據庫以及執行緒,不會再像以前一樣,進行測試時,只有一個CPU在工作滿載,而其他CPU遭到閑置。其他較小的更新,還有Webpacker現成為預設JavaScript打包程序。
etBrains RubyMine 2024.1 (macOS, Linux, Windows) - 最智能的 Ruby 與 Rails IDE
請訪問原文鏈接:JetBrains RubyMine 2024.1 (macOS, Linux, Windows) - 最智能的 Ruby 與 Rails IDE,查看最新版。原創作品,轉載請保留出處。
作者主頁:sysin.org
JetBrains RubyMine - 最智能的 Ruby 與 Rails IDE
Navigate
改進您的工作
觀看視頻介紹
發現所有新功能
JetBrains RubyMine 2024.1 (macOS, Linux, Windows) x64 & aarch64 百度網盤鏈接:https://sysin.org/blog/jetbrains-rubymine/
更多:JetBrains IDE 2024.1 (macOS, Linux, Windows) - 開發者工具
*請認真填寫需求信息,我們會在24小時內與您取得聯系。