A Rails 6.0 gyors áttekintése

A Rails 6.0 majdnem itt van. A stabil verzió április 30-án jelenik meg. A Rails 6.0 beta1 január 15-én jelent meg. Mint mindig a Rails kiadások, a Rails 6.0 is akciódús. Két újonnan bevezetett keretrendszer létezik, az Action Mailbox és az Action Text. Ebben a bejegyzésben vessünk egy gyors pillantást az Action Text használatára egy kis alkalmazásban.

Művelet szövege

Az Action Text lehetővé teszi számunkra, hogy gazdag szöveges tartalmat és szerkesztést hozzunk a Rails-be. Ez azt jelenti, hogy olyan műveleteket hajthatunk végre, mint a szöveg formázása, képek beágyazása, hivatkozások formázása, listák és egyéb szerkesztőszerű szolgáltatások hozzáadása a szövegmezőhöz.

Ez úgy történik, hogy a Trix szerkesztőt beépíti a keretrendszerbe. A Trix szerkesztő által létrehozott RichText tartalmat a saját RichText modelljébe menti az alkalmazás, amely az alkalmazás bármely meglévő Active Record modelljéhez társul. Az összes beágyazott képet vagy más mellékletet automatikusan tárolja az Active Storage használatával.

Kezdjük el építeni a Rails alkalmazást, amely egy blogger alkalmazás lesz. Az alkalmazás a Rails 6.0-ban készült, így a rubin verziónak> 2,5-nek kell lennie.

A terminál típusában

rails new blog --edge

A - edge zászló lekéri a sínek legfrissebb verzióját vagy élváltozatát.

Az Action Text a webcsomagoló és az ActiveStorage telepítését várja. Az aktív tárhely már megtalálható a Rails alkalmazásban. Tehát szükségünk van

gem “image_processing”, “~> 1.2” #uncomment from Gemfilegem ‘webpacker’

a drágakő fájlban.

Most fuss

bundle install.

Ezután létre kell hoznunk egy config / webpacker.yml fájlt:

bundle exec rails webpacker:install

Most indítsuk el a Rails szervert.

Remek, készítsük el gyorsan az alkalmazást. Az alkalmazásnak csak egy modellcikkje lesz.

Hozzunk létre egy vezérlőt a cikkekhez:

rails g controller Articles index new create show edit update destroy — no-helper — no-test-frameworks

Ezután konfigurálja az útvonalakat:

Rails.application.routes.draw do resources :articlesend

Ezután létre kell hoznunk a modellünket. A Cikkek modellünknek két mezője lesz: a cím és a szöveg . a szövegnek a Rich Text formátumot elfogadó mezőnek kell lennie. Tehát a migráció során csak a cím mezőt kell hozzáadnunk. A szövegmezőt az ActionText kezeli.

Generáljuk a modellt

rails g model Articles title:string — no-test-framework

és futtassa a migrációkat:

rails db:migrate

Most adjuk hozzá az ActionText részt. Az első futásra

rails action_text:install

Ez hozzáadja az Action Text által megkívánt összes függőséget. Legfőképpen ez egy új javascript / packs / application.js fájlt és két művelet-tároló migrációt fog hozzáadni .

Futtassa újra az áttéréseket a

rails db:migrate

Most hozzáadhatjuk modellünk szöveges részét. Lépjen az app / models / article.rb oldalra, és adja hozzá a következő sort

has_rich_text :text

a szöveg az általunk megadott mezőnév. Lehet bármi, például test vagy tartalom stb.

Most a modellünk válik

class Article < ApplicationRecord has_rich_text :textend

Mielőtt elkészítenénk az űrlapot, hozzuk létre a cikkek létrehozására szolgáló vezérlő logikánkat:

class ArticlesController < ApplicationController def create @article = Article.new(article_params) @article.save redirect_to @article end
 private def article_params params.require(:article).permit(:title, :text) end
end

Most elkészíthetjük a blog űrlapját. Az app / views / articles / new.rb fájlba írja be a következő űrlapkódot :

Figyeljük meg, hogy a szövegmezőhöz a form.rich_text_area melyiket használjukakciószöveg biztosítja.

Rendereljük oldalunkat:

Fantasztikus!!

Most egy fantasztikus szövegszerkesztővel rendelkezünk cikkünk elkészítéséhez.

Mielőtt elkezdenénk játszani a szerkesztővel, gyorsan valósítsuk meg a blog show funkcióit, hogy lássuk az általunk készített cikkeket.

Az app / controllers / articles_controller.rb fájlban adja hozzá a következő függvényt:

 def show @article = Article.find(params[:id]) end

Ehhez létre kell hoznunk egy nézetet is.

Hozza létre az app / views / articles / show.html.erb fájlt, és adja hozzá a következő kódot:

Article Title:

Article Text:

Ez az. Az alkalmazás elkészült. Most ellenőrizzük az ActionText által biztosított szövegszerkesztőben elérhető különféle szolgáltatásokat.

Láthatjuk, hogy az ActionText biztosítja a normál gazdag szövegszerkesztő szinte összes funkcióját, például a szöveg vastag, dőlt formázását, áthúzások, idézetek, linkek hozzáadását, képek áthúzását stb.

Ennek mentése után láthatjuk a mentett bejegyzést a show oldalon.

Nagy!

Ez egy nagyon kicsi példa, amely megmutatja az ActionText lehetőségeit. Remélem hasznos volt. Próbáld ki.

A webalkalmazások döntő többsége valamilyen módon gazdag tartalommal foglalkozik. Tehát úgy gondolom, hogy a Rails új funkciója sok fejlesztő életét megkönnyítheti.

Dicséret a DHH-nak és minden félelmetes embernek, akik e mögött állnak.

//github.com/amkurian/Rails-6.0_action_text_demo

Néhány hasznos link:

Műveletszöveg áttekintése - Ruby on Rails útmutatók

Műveletszöveg áttekintése Ez az útmutató minden szükséges információt megad a gazdag szöveges tartalom kezeléséhez. Miután edgeguides.rubyonrails.org