Ātrs ieskats darbības tekstā sliedēm 6.0

Rails 6.0 ir gandrīz klāt. Stabilā versija tiks izlaista 30. aprīlī. Rails 6.0 beta1 tika izlaists 15. janvārī. Tā kā Rails izlaidumi vienmēr ir, arī Rails 6.0 ir pakļauts darbībai. Nesen tika ieviesti divi galvenie ietvari - Action Mailbox un Action Text. Šajā ziņā ātri apskatīsim Action Text, izmantojot to nelielā lietotnē.

Darbības teksts

Darbības teksts ļauj mums nodrošināt bagātināta teksta saturu un rediģēšanu uz Rails. Tas nozīmē, ka mēs varam veikt tādas darbības kā teksta formatēšana, attēlu iegulšana, saišu formatēšana, sarakstu pievienošana un citas redaktoram līdzīgas funkcijas teksta laukā.

Tas tiek darīts, iekļaujot sistēmā Trix redaktoru. Trix redaktora ģenerētais RichText saturs tiek saglabāts savā RichText modelī, kas ir saistīts ar jebkuru lietojumprogrammā esošo aktīvā ieraksta modeli. Visi iegultie attēli vai citi pielikumi tiek automātiski saglabāti, izmantojot aktīvo krātuvi.

Sāksim veidot mūsu lietotni Rails, kas būs emuāru veidotāja lietotne. Lietotne ir izveidota Rails 6.0 versijā, tāpēc rubīna versijai jābūt> 2,5.

Termināla tipā

rails new blog --edge

Karodziņš “mala” ienes jaunāko sliežu versiju vai sliežu malu versiju.

Darbības teksts sagaida, ka tiks instalētas tīmekļa pakotnes un ActiveStorage. Aktīvā krātuve jau atrodas lietotnē Rails. Tātad mums vajag

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

dārgakmens failā.

Tagad palaidiet

bundle install.

Tālāk mums jāizveido config / webpacker.yml:

bundle exec rails webpacker:install

Tagad sāksim savu Rails serveri.

Lieliski, ātri izveidosim savu lietotni. Lietotnei būs tikai viens raksta paraugs.

Izveidosim kontrolieri rakstiem:

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

Pēc tam konfigurējiet mūsu maršrutus:

Rails.application.routes.draw do resources :articlesend

Tālāk mums jāizveido savs modelis. Mūsu rakstu modelim būs divi lauki: tie ir nosaukums un teksts . tekstam jābūt laukam, kas pieņem bagātināta teksta formātu. Tāpēc migrācijā mums jāpievieno tikai nosaukuma lauks. Teksta lauku apstrādās ActionText.

Ģenerēsim modeli

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

un veiciet migrācijas:

rails db:migrate

Tagad pievienosim ActionText daļu. Tam pirmajam skrējienam

rails action_text:install

Tas pievienos visas darbības tekstam nepieciešamās atkarības. Vissvarīgākais ir tas, ka tas pievienos jaunu failu javascript / packs / application.js un divas darbību glabāšanas migrācijas.

Palaidiet migrācijas vēlreiz, izmantojot

rails db:migrate

Tagad mēs varam pievienot sava modeļa teksta daļu. Dodieties uz app / models / article.rb un pievienojiet šādu rindu

has_rich_text :text

teksts ir lauka nosaukums, kuru mēs sniedzam. Tas var būt kaut kas līdzīgs ķermenim vai saturam utt.

Tagad mūsu modelis kļūst

class Article < ApplicationRecord has_rich_text :textend

Pirms veidojam veidlapu, izveidosim mūsu kontroliera loģiku rakstu izveidei:

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

Tagad mēs varam izveidot emuāra veidlapu. Programmā app / views / articles / new.rb pievienojiet šādu veidlapas kodu:

Ievērojiet, ka teksta laukā, mēs izmantojam form.rich_text_area kasnodrošina darbības teksts.

Atveidosim savu lapu:

Satriecošs!!

Tagad mūsu raksta izveidošanai ir pieejams lielisks teksta redaktors.

Pirms sākam spēlēt ar redaktoru, ātri ieviesīsim emuāra izrādes funkcionalitāti, lai mēs varētu redzēt mūsu izveidotos rakstus.

Programmā app / controllers / articles_controller.rb pievienojiet šādu funkciju:

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

Mums arī ir jāizveido skats uz to.

Izveidojiet failu app / views / articles / show.html.erb un pievienojiet šādu kodu:

Article Title:

Article Text:

Tieši tā. Mūsu lietotne ir pabeigta. Tagad pārbaudīsim dažādas teksta redaktorā pieejamās funkcijas, ko nodrošina ActionText.

Mēs varam redzēt, ka ActionText nodrošina gandrīz visas parastā bagātinātā teksta redaktora funkcijas, piemēram, teksta formatēšanu treknrakstā, kursīvā, svītrojumu, pēdiņu, saišu pievienošanu, attēlu vilkšanu un nomešanu utt.

Pēc šīs saglabāšanas mēs varam redzēt saglabāto ziņu no pārraides lapas.

Lieliski!

Šis ir ļoti mazs piemērs, kas parāda ActionText potenciālu. Ceru, ka tas bija noderīgi. Izmēģiniet to.

Lielākā daļa tīmekļa lietotņu kaut kādā veidā nodarbojas ar bagātinātu saturu. Tāpēc es uzskatu, ka šī jaunā Rails funkcija var atvieglot daudzu izstrādātāju dzīvi.

Slava DHH un visiem lieliskajiem cilvēkiem, kas aiz tā stāv.

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

Dažas noderīgas saites:

Darbības teksta pārskats - Ruby on Rails ceļveži

Darbības teksta pārskats Šis ceļvedis sniedz visu nepieciešamo, lai sāktu darbu ar bagātināta teksta saturu. Pēc… edgeguides.rubyonrails.org