2013-11-20 4 views
10

У меня есть модель Джанго, которая содержит description поля:Добавить богатое функциональные возможности форматирования текста Джанго TextField

class Product(models.Model): 
    name = models.CharField(max_length="125") 
    description = models.TextField() 

class ProductForm(ModelForm): 
    class Meta: 
     model = Product 
    def __init__(self, *args, **kwargs): 
     super(ProductForm, self).__init__(*args, **kwargs) 
     self.fields['description'].widget.attrs = { 'placeholder':'Description', 'rows':'10'} 

Я делаю его, как показано ниже

<html> 
    <body> 
    {{form.name}} 
    {{form.description | linebreaks}} 
    </body> 
</html> 

Так что с выше фильтром linebreaks Я нахожусь способный получить данные как форматирование строк, но теперь я хочу указать URL-адрес (www.google.co.in) в поле описания, и он должен быть доступен для кликов на переднем конце в product detail page

Как добавить форматирование форматированного текста в поле описания django на лицевой стороне?

ответ

14

Рассмотрите возможность использования django-tinymce.
С этим вы легко интегрируете текстовый редактор TinyMCE с текстовыми областями.

List of django wysiwig apps

+0

ki попытались в соответствии с предложением ur, но я не могу заставить его работать, можете ли вы посмотреть его здесь http://stackoverflow.com/questions/20097929/make-django-wysiwyg-work-on-django- страницы? –

0

Другой способ можно добавить некоторые HTML в поле описания

<a href="yourlink.com">your link</a> 

и сделать его доступным на переднем конце с безопасного тэгом:

{{form.description | safe | linebreaks}} 

Обязательно сначала поместите безопасный ярлык, иначе не получится

Смежные вопросы