我尝试从数据库中拆分String(SQLite)。字符串有一个换行符\ n我希望将其拆分为两部分。它适用于普通字符串,例如text =" Hello \ n World"。但是如果我使用我的数据库中的字符串它不起作用(文本在数据库中用\ n正确保存!!)
获取字符串第一部分的代码:
from django import template
from products.models import News
register = template.Library()
@register.simple_tag
def get_first_title(id):
search_value = "\n"
news = News.objects.values('title')
title = news.filter(pk=id)
number = str(title).find(search_value)
first_title = str(title)[0:number]
return first_title
答案 0 :(得分:1)
试试这个:
@register.simple_tag
def get_first_title(id):
news = News.objects.get(pk=id)
return news.title.split("\n")[0]
虽然你应该抓住可能的例外:
@register.simple_tag
def get_first_title(id):
try:
news = News.objects.get(pk=id)
splitted_title = news.title.split("\n")
if splitted_title:
return splitted_title[0]
except News.DoesNotExist:
# raise exception or return None or something
答案 1 :(得分:0)
使用以下代码代替最后4行中的代码
title = news.filter(pk=id)
number = str(title).split(" ")
# number is a list of strings
print(number , len(number))