Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django模板比较执行错误代码路径的文件中的数据_Python_Django - Fatal编程技术网

Python django模板比较执行错误代码路径的文件中的数据

Python django模板比较执行错误代码路径的文件中的数据,python,django,Python,Django,我有一个文件/tmp/something.txt,该文件的内容如下所示,只是一个简单的1 在我看来,我有以下几点 class StrippedView(需要访问,TemplateView): 模板名称='stripped' 标题='stripped' def获取上下文数据(自身,**kwargs): 打开('/tmp/something.txt',r')作为文件: data=file.read() 上下文=超级(剥离,自)。获取上下文数据(**kwargs) 上下文['title']=self.

我有一个文件/tmp/something.txt,该文件的内容如下所示,只是一个简单的1

在我看来,我有以下几点

class StrippedView(需要访问,TemplateView):
模板名称='stripped'
标题='stripped'
def获取上下文数据(自身,**kwargs):
打开('/tmp/something.txt',r')作为文件:
data=file.read()
上下文=超级(剥离,自)。获取上下文数据(**kwargs)
上下文['title']=self.title
上下文['something']=数据
返回上下文
这是我的模板中的内容


激活
{%if something='1%}
{%else%}
{%endif%}
以下是我所期望的情况

当文件中有1时,第一个按钮显示为activate(激活),如果文件还有其他内容,则会显示activate(激活)按钮

发生了什么事

而是始终显示激活按钮

我试过什么

起初,我想知道实际返回的是什么,所以我用如下变量替换了activate按钮的文本


这表明变量具有正确的数据,即1

我也尝试过在两种模式之间切换

{%if something='1%}
{%if something==1%}

两者似乎都有相同的结果,我也不知所措。read()将返回一个字符串,因此
{%if something==1%}
,将始终失败,您应该使用
{%if something='1%}
。我在底部列出了我已经尝试了这两种方法,但考虑到您的评论,我已将代码更改为
{%如果某物==1%}
但是它仍然不能像预期的那样工作@willemvanonsema你确定
数据=='1'
,而不是
'1'
,或者
'1\n'
,或者类似的东西-带有一个不可见的字符吗?从命令行对文件进行快速vim时,它没有任何行或空格..我不确定如何验证它不是来自cod但我的观点是错误的@ForceBru@user4820734例如,您可以
打印(repr(context['something')
。或者如果
context['something']==1'
,则可以从Python打印调试消息。