Covert « retour » au marquage textile lors de l'édition post via RedCloth et les lois-as-Textiled?

StackOverflow https://stackoverflow.com/questions/4306843

  •  29-09-2019
  •  | 
  •  

Question

Question: Comment puis-je « convertir » mon dos HTML généré textile au marquage textile dans mon application

Voici la situtation. J'ai réussi à rassembler un éditeur de blog pauvre homme dans mon Rails 3 en mettant en œuvre l'application RedCloth et agit-en-textiled dans mon modèle « messages ». J'utilise des actes-en-textiled de prendre la douleur de l'écriture contenu dans le corps de mes « messages ».

Il fonctionne très bien. Cependant, quand je modifier le message que je vois le code HTML généré dans le corps de poste. Ce que je voudrais voir est le balisage textile d'origine. Est-ce possible?

Merci d'avance pour votre aide!

Voici mon modèle post:

class Post < ActiveRecord::Base
  has_many :tags
  acts_as_taggable_on :tags
  acts_as_textiled :title, :body
  attr_accessible :tag_list, :tags, :title, :body, :post, :comments
  validates :title, :presence => true
  validates :body, :presence => true
  default_scope :order => 'posts.created_at DESC'

Voici mes messages pour afficher la méthode "Show":

<%= @post.title.html_safe %>
<%= @post.body.html_safe %>
Était-ce utile?

La solution

Essayez ceci:

html = <<HTML
<h1>This is a heading</h1>
<strong>bold text</strong>
<i>italic</i>
HTML

textile = ClothRed.new(html).to_textile

puts textile

Sortie:

h1. This is a heading


*bold text*  
__italic__

Dans votre cas, je pense que vous devriez faire:

<%= ClothRed.new(@post.body).to_textile.html_safe %>
# instead of
<%= @post.body.html_safe %>

Je ne sais pas si cela est considéré comme la meilleure pratique, cependant.

Documentation: http://clothred.rubyforge.org/doc/html/index. html

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top