Kratki uvid u akcijski tekst za tračnice 6.0

Rails 6.0 je skoro stigao. Stabilna verzija bit će objavljena 30. travnja. Rails 6.0 beta1 objavljen je 15. siječnja. Kao što Rails izdanja uvijek jesu, Rails 6.0 također je prepun akcije. Nova su dva glavna okvira, Action Mailbox i Action Text. U ovom postu, pogledajmo na brzinu Akcijski tekst koristeći ga u maloj aplikaciji.

Tekst akcije

Action Text omogućuje nam da sadržaj obogaćenog teksta i uređivanje stavimo na Rails. To znači da možemo izvoditi operacije poput oblikovanja teksta, ugrađivanja slika, oblikovanja veza, dodavanja popisa i ostalih značajki sličnih uređivaču u tekstualno polje.

To se postiže uključivanjem uređivača Trix u okvir. Sadržaj RichText koji generira uređivač Trix sprema se u vlastiti model RichText koji je povezan s bilo kojim postojećim modelom Active Record u aplikaciji. Sve ugrađene slike ili drugi privici automatski se pohranjuju pomoću Active Storagea.

Počnimo graditi našu aplikaciju Rails koja će biti aplikacija za blogere. Aplikacija je kreirana u Rails 6.0, tako da rubin verzija mora biti> 2,5.

U tipu terminala

rails new blog --edge

Zastavica - edge dohvaća najnoviju verziju tračnica ili rubnu verziju tračnica.

Action Text očekuje instaliranje web pakera i ActiveStoragea. Aktivna pohrana već je prisutna u aplikaciji Rails. Dakle trebamo

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

u gem datoteci.

Sad trči

bundle install.

Dalje, moramo stvoriti config / webpacker.yml:

bundle exec rails webpacker:install

Počnimo sada naš Rails Server.

Izvrsno, napravimo brzo našu aplikaciju. Aplikacija će imati samo jedan model Article.

Stvorimo kontroler za članke:

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

A zatim konfigurirajte naše rute:

Rails.application.routes.draw do resources :articlesend

Dalje, moramo stvoriti svoj model. Naš model Članci imat će dva polja: to su naslov i tekst . Tekst mora biti polje koje prihvaća format obogaćenog teksta. Dakle, u migraciji trebamo dodati samo polje naslova. Tekstualnim poljem obrađivat će ActionText.

Generirajmo model

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

i pokrenite migracije:

rails db:migrate

Dodajmo sada ActionText dio. Za tu prvu vožnju

rails action_text:install

To će dodati sve ovisnosti koje zahtijeva tekst radnje. Ono što je najvažnije, dodati će novu datoteku javascript / packs / application.js i dvije migracije radnje-pohrane.

Ponovno pokrenite migracije pomoću

rails db:migrate

Sada možemo dodati tekstualni dio našeg modela. Idite na app / models / article.rb i dodajte sljedeći redak

has_rich_text :text

text je naziv polja koje pružamo. To može biti bilo što poput tijela ili sadržaja itd.

Sada naš model postaje

class Article < ApplicationRecord has_rich_text :textend

Prije nego što napravimo obrazac, kreirajmo logiku kontrolera za stvaranje članaka:

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

Sada možemo stvoriti obrazac za blog. U app / views / articles / new.rb dodajte sljedeći kôd obrasca:

Primijetite da za tekstno polje koristimo form.rich_text_area kojapruža Action Text.

Izradimo našu stranicu:

Super!!

Sada imamo izvanredan uređivač teksta za stvaranje našeg članka.

Prije nego što se počnemo igrati s uređivačem, hajde da brzo implementiramo funkciju prikazivanja bloga kako bismo mogli vidjeti članke koje smo stvorili.

U app / controllers / articles_controller.rb dodajte sljedeću funkciju:

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

Također, za to moramo stvoriti pogled.

Izradite datoteku app / views / articles / show.html.erb i dodajte sljedeći kod:

Article Title:

Article Text:

To je to. Naša je aplikacija gotova. Sada provjerimo razne značajke dostupne u uređivaču teksta koje pruža ActionText.

Vidimo da ActionText pruža gotovo sve funkcionalnosti uobičajenog uređivača obogaćenog teksta, poput oblikovanja teksta podebljano, kurziv, dodavanje precrtavanja, citata, veza, povlačenja i ispuštanja slika itd.

Nakon što ovo spremimo, spremljeni post možemo vidjeti sa stranice emisije.

Sjajno!

Ovo je vrlo mali primjer koji prikazuje potencijal ActionText-a. Nadam se da je bilo korisno. Isprobajte.

Velika većina web aplikacija na neki se način bavi bogatim sadržajem. Stoga vjerujem da ova nova značajka Railsa može olakšati život mnogih programera.

Svaka čast DHH-u i svim strašnim ljudima koji stoje iza ovoga.

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

Neke korisne poveznice:

Pregled teksta akcije - Vodiči Ruby on Rails

Pregled teksta radnje Ovaj vam vodič nudi sve što vam je potrebno za početak rukovanja sadržajem obogaćenog teksta. Nakon ... edgeguides.rubyonrails.org