Come configurare un’editor se ActionText non può essere usato
Facciamo uso di TinyMCE che può essere integrato in Rails facilmente e concede con anche la registrazione free delle buone feature.
Che cosa è TinyMCE
Quando in un form avete un campo text e volete avere un editor completo di comandi per elenchi puntati, styling, ecc… allora TinyMCE fa al caso vostro. Ma ovviamente ce ne sono altri di tool che fanno questa cosa.
Prerequisiti
- Abbiamo un progetto Rails funzionante dalla versione 4.2 o superiore
- Registratevi sul portale di TinyMCE
- Compilate i domini approvati : Approved Domains :
- quello esistente: localhost
- per metterlo in produzione dovrete aggiungere un nuovo dominio: miodominio.com
- Nella Cloud Dashboard selezionate Self-hosted
Installazione
- aggiungiamo nel Gemfile
# Insert the TinyMCE WYSIWYG into the blog gem 'tinymce-rails'
- Nella cartella config/ creiamo un file di nome: tinymce.yml
height: 500 menubar: false toolbar: - undo redo | blocks | bold italic | alignleft aligncenter alignright | bullist numlist outdent indent | removeformat | help plugins: - insertdatetime lists media table code help wordcount - undo redo | blocks | bold italic | alignleft aligncenter alignright | bullist numlist outdent indent | removeformat | help | code powerpaste_allow_local_images: true powerpaste_word_import: 'clean' powerpaste_html_import: 'clean' powerpaste_googledocs_import: 'prompt'
- Nel file views/layout/application.html.erb :
<head> ... <script type="text/javascript" src="/assets/tinymce.js"></script> ... </head>
- Adesso aprite la pagine di un form qualsiasi (ipotiziamo che usiamo simple_form ):
... <%= f.input :note, as: :text, :input_html => { :id=>"note", :class => "tinymce", :rows => 40, :cols => 120 } %> <%= tinymce %> ...
se invece fosse un form standard rails :
<%= f.text_area( :note, cols: 120, rows: 40, class: 'tinymce')%>
<%= tinymce %>
Ora ri/avviate il vostro server con : rails server