mirror of https://github.com/django/django.git
Fixed #11021 -- Clarified newline stripping behavior in the truncatewords and truncatewords_html filters. Thanks to Ben Spaulding for the report and patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@13555 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
103f7f83eb
commit
806f3b26f8
|
@ -256,6 +256,8 @@ def truncatewords(value, arg):
|
|||
Truncates a string after a certain number of words.
|
||||
|
||||
Argument: Number of words to truncate after.
|
||||
|
||||
Newlines within the string are removed.
|
||||
"""
|
||||
from django.utils.text import truncate_words
|
||||
try:
|
||||
|
@ -271,6 +273,8 @@ def truncatewords_html(value, arg):
|
|||
Truncates HTML after a certain number of words.
|
||||
|
||||
Argument: Number of words to truncate after.
|
||||
|
||||
Newlines in the HTML are preserved.
|
||||
"""
|
||||
from django.utils.text import truncate_html_words
|
||||
try:
|
||||
|
|
|
@ -39,7 +39,10 @@ wrap = allow_lazy(wrap, unicode)
|
|||
def truncate_words(s, num, end_text='...'):
|
||||
"""Truncates a string after a certain number of words. Takes an optional
|
||||
argument of what should be used to notify that the string has been
|
||||
truncated, defaults to ellipsis (...)"""
|
||||
truncated, defaulting to ellipsis (...)
|
||||
|
||||
Newlines in the string will be stripped.
|
||||
"""
|
||||
s = force_unicode(s)
|
||||
length = int(num)
|
||||
words = s.split()
|
||||
|
@ -51,10 +54,13 @@ def truncate_words(s, num, end_text='...'):
|
|||
truncate_words = allow_lazy(truncate_words, unicode)
|
||||
|
||||
def truncate_html_words(s, num, end_text='...'):
|
||||
"""Truncates html to a certain number of words (not counting tags and
|
||||
"""Truncates HTML to a certain number of words (not counting tags and
|
||||
comments). Closes opened tags if they were correctly closed in the given
|
||||
html. Takes an optional argument of what should be used to notify that the
|
||||
string has been truncated, defaults to ellipsis (...)."""
|
||||
string has been truncated, defaulting to ellipsis (...).
|
||||
|
||||
Newlines in the HTML are preserved.
|
||||
"""
|
||||
s = force_unicode(s)
|
||||
length = int(num)
|
||||
if length <= 0:
|
||||
|
|
|
@ -1883,6 +1883,8 @@ For example::
|
|||
|
||||
If ``value`` is ``"Joel is a slug"``, the output will be ``"Joel is ..."``.
|
||||
|
||||
Newlines within the string will be removed.
|
||||
|
||||
.. templatefilter:: truncatewords_html
|
||||
|
||||
truncatewords_html
|
||||
|
@ -1902,6 +1904,8 @@ For example::
|
|||
If ``value`` is ``"<p>Joel is a slug</p>"``, the output will be
|
||||
``"<p>Joel is ...</p>"``.
|
||||
|
||||
Newlines in the HTML content will be preserved.
|
||||
|
||||
.. templatefilter:: unordered_list
|
||||
|
||||
unordered_list
|
||||
|
|
Loading…
Reference in New Issue