如何从Textarea删除<br/>标签?

拉格布丁

我正在使用Django构建一个简单的个人网站。我刚刚建立了一个基本的电子邮件表格。这是它的models.py文件:

from django.db import models

class Message(models.Model):
    name = models.CharField(max_length=200, unique=True)
    email = models.EmailField(unique=True)
    subject = models.CharField(max_length=100, unique=True)
    message = models.CharField(max_length=1000, unique=True)

    def __unicode__(self):
        return self.name

这是相应的forms.py文件:

from django import forms
from rksite.models import Message

class EmailForm(forms.ModelForm):
    name = forms.CharField(max_length=200,help_text="Name:")
    email = forms.EmailField(help_text="Email:")
    subject = forms.CharField(max_length=100, help_text="Subject:")
    message = forms.CharField(max_length=1000, widget=forms.Textarea, help_text="Message:")

    class Meta:
        model = Message #link the model to the form

最后,我还将在下面添加表单的html页面:

{% extends 'rksite/base.html' %}

{% block title %}RaghavKumarContact{% endblock %}

{% block content %}
<h1>Contact Me</h1>
<br />
<form class="span6" id="email_form" method="POST" action="/home/contact/">
{% csrf_token %}
{% for field in form.visible_fields %}
        {{ field.errors }}
        {{ field.help_text }}
        {{ field|linebreaks }}
{% endfor %}
<br />
<button class="btn btn-primary" type="submit" name="send">Send</button>
</form>
{% endblock %}

现在,无论我做什么,“ br /”标签都会显示在“ Message” Textarea字段内。这是我在网页上看到的内容:

在此处输入图片说明

如何从此Textarea中删除该标签?

编辑:这就是如果我没有linebreaks应用筛选器,它将是什么样子

在此处输入图片说明

换行符过滤器的替代方法是什么?

彼得·德格洛珀

不要linebreaks在这里使用

{{ field|linebreaks }}

这将呈现表单的小部件,然后将整个呈现的HTML块传递通过linebreaks过滤器。该过滤器将换行符转换为<br />标签,并且Textarea小部件的呈现在文本之前包括换行符:

def render(self, name, value, attrs=None):
    if value is None:
        value = ''
    final_attrs = self.build_attrs(attrs, name=name)
    return format_html('<textarea{}>\r\n{}</textarea>',
                       flatatt(final_attrs),
                       force_text(value))

(来源https://github.com/django/django/blob/master/django/forms/widgets.py#L435

我不确定为什么要传递字段值linebreaks-如果您担心的是,HTML textarea应该可以很好地处理消息文本中的常规换行符。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery删除BR标签

来自分类Dev

PHP删除BR标签

来自分类Dev

PHP:删除过多的<br>标签

来自分类Dev

调整窗口大小时删除<br />标签

来自分类Dev

Python bs4删除br标签

来自分类Dev

Python bs4删除br标签

来自分类Dev

调整窗口大小时删除<br />标签

来自分类Dev

如何解析HTML网页并删除<br>标签?

来自分类Dev

如何解析HTML网页并删除<br>标签?

来自分类Dev

如何在br标签之间刮取文本

来自分类Dev

如何使用CSS模拟多个<br/>标签

来自分类Dev

html textarea将br标签替换为\ n

来自分类Dev

在 nl2br 中使用 table 标签时如何避免不必要的 br 标签?

来自分类Dev

从字符串的开头和结尾删除BR标签

来自分类Dev

从字符串的开头和结尾删除BR标签

来自分类Dev

删除PHP中的多余标签'<p> <br> </ p>'?

来自分类Dev

从 PHP 中的 XML 字符串中删除 <br /> 标签

来自分类Dev

删除 <p> 标签,其中只有 <br> javascript

来自分类Dev

HTML BR标签控制

来自分类Dev

如何在XPath text()函数中匹配br标签

来自分类Dev

如何在Jade HTML中添加br标签

来自分类Dev

如何在HTML <br>标签之间拆分HTML / XML文本?

来自分类Dev

如何在电子邮件内容中使用<br>标签?

来自分类Dev

如何在引导卡中使用<br>标签?

来自分类Dev

隐藏标签时如何停止这些<br>的使用空间?

来自分类Dev

如何在文本元素后附加<br>标签?

来自分类Dev

如何为 <br> 标签中包含的文本编写 xpath?

来自分类Dev

仅在段落中的文本之前出现,才如何删除第一个br标签?

来自分类Dev

如何在按Enter键时将<p> </ p>标签更改为<br>标签