尝试使用crispy过滤器时,我收到一个错误:
django.template.exceptions.TemplateSyntaxError:过滤器无效:'脆'
我相信这是因为由于Django某种原因无法找到松脆的过滤器,因为当我输入一个不存在的过滤器的名称时,我收到了同样的错误。
我已经{% load crispy_forms_tags %}在 html 文档的顶部使用{{ form|crispy }}并用于应用过滤器。我还在文件中添加了“crispy forms”应用程序settings.py,并使用 安装了django-crispy-forms包pip,我可以清楚地看到使用pip freeze.
请注意,脆皮表单过滤器确实适用于我网站的不同 django 应用程序,即使我认为我没有更改该应用程序目录中的任何内容(但我可能错了,自从我在该目录中工作以来已经有一段时间了)。我想不出有什么不同。我读了一些关于附加到第一个应用程序目录的过滤器,它可以,仅此而已,但该信息含糊不清,当我{% load crispy_forms_tags %}从使用它的模板中删除该行时,脆过滤器仍然无法在新应用程序中工作。
这是模板。
{% extends "breed_identifier/base.html" %}
(% load crispy_forms_tags %)
{% block content %}
<div class="content-section">
<form method="POST">
{% csrf_token %}
<fieldset class="form-group">
<legend class="border-bottom mb-4">Join Today</legend>
{{ form|crispy }}
</fieldset>
<div class="form-group">
<button class="btn btn-outline-info" type="submit">Sign Up</button>
</div>
</form>
<div class="border-top pt-3"> …Run Code Online (Sandbox Code Playgroud) 我认为 .class 是它被调用的对象的类。然而,这不符合我试图用程序做的事情。我会举一些例子。
//o is of type Object
//this method throws error "cannot find symbol" for the cast method
SampleClass.cast(o);
Run Code Online (Sandbox Code Playgroud)
//sampleClass is an instance of SampleClass
//this method throws error "<identifier> expected"
sampleClass.class.cast(o);
Run Code Online (Sandbox Code Playgroud)
//this method works!
SampleClass.class.cast(o);
Run Code Online (Sandbox Code Playgroud)
//this returns two "<identifier> expected" errors
sampleClass.class.class.cast(o);
Run Code Online (Sandbox Code Playgroud)
//this works too!
((SampleClass) o)
Run Code Online (Sandbox Code Playgroud)
之前我认为sampleClass.class == SampleClass,一个Class类型的对象。我还认为 SampleClass.class 会返回一些很难想象的元数据。现在我知道我真的什么都不知道。感谢任何帮助解决这个难题的方法:)
编辑:谢谢大家!我很高兴能够学习有关 Java 的知识。我很感激帮助
我仍然是 Spring 的新手,并且在堆栈上查看了类似的问题,但无法从我阅读的内容中确定答案。
当我调用我的 applicationContext 变量时,我收到了一个 NPE,这意味着该 bean 必须没有被正确创建或注入。这是我的程序的相关部分。
@SpringBootTest
@ContextConfiguration(classes = TestConfig.class)
public class SampleIT {
@Autowired
private ApplicationContext applicationContext;
@Test
public void sampleMethod() throws Exception {
//NPE below
String[] allBeanNames = applicationContext.getBeanDefinitionNames();
//more logic
Run Code Online (Sandbox Code Playgroud)
我试图让 ApplicationContext 实例来调试为什么其他 bean 从我的配置中为空,所以这一切都必须是因为我对 ApplicationContext 是如何设置的以及从中注入的 bean 的理解存在一个基本缺陷。很感谢任何形式的帮助!