Link Search Menu Expand Document

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

  1. aggiungiamo nel Gemfile
         # Insert the TinyMCE WYSIWYG into the blog
         gem 'tinymce-rails'
    
  2. 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'
    
  3. Nel file views/layout/application.html.erb :
     <head>
     ...
     <script type="text/javascript" src="/assets/tinymce.js"></script>
     ...
     </head>
    
  4. 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


Copyright © 2023 RICSystem - partner DIAGO SRL -