xnuinside / gino-admin

Admin Panel for GinoORM - ready to up & run (just add your models)
https://gino-admin.readthedocs.io/en/latest/
MIT License
49 stars 10 forks source link

jinja2.exceptions.TemplateAssertionError: no test named 'boolean' #35

Closed mcorbe closed 3 years ago

mcorbe commented 3 years ago

I hit an jina2 parsing issue when using gino-admin.

For information, my db is PostgreSQL.

When going on one of model page or gino_admin_users, I get the following error:

jinja2.exceptions.TemplateAssertionError: no test named 'boolean'

I did find a few similar issues on different libraries but no solutions so far, do you have an idea how to solve this ?

See trace bellow:

Traceback (most recent call last):
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/sanic/app.py", line 939, in handle_request
    response = await response
  File "/usr/local/lib/python3.7/site-packages/gino_admin/auth.py", line 37, in validate
    return await route(request, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/gino_admin/routes/crud.py", line 25, in model_view_table
    return await render_model_view(request, model_id)
  File "/usr/local/lib/python3.7/site-packages/gino_admin/routes/logic.py", line 60, in render_model_view
    unique=cfg.models[model_id]["identity"],
  File "/usr/local/lib/python3.7/site-packages/gino_admin/config.py", line 36, in render_with_updated_context
    self.render_string(template, request, **context),
  File "/usr/local/lib/python3.7/site-packages/sanic_jinja2/__init__.py", line 141, in render_string
    return self.env.get_template(template).render(**context)
  File "/usr/local/lib/python3.7/site-packages/jinja2/asyncsupport.py", line 76, in render
    return original_render(self, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 1008, in render
    return self.environment.handle_exception(exc_info, True)
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 780, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/local/lib/python3.7/site-packages/jinja2/_compat.py", line 37, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.7/site-packages/gino_admin/templates/data_table.html", line 23, in template
    {% if field is boolean %}
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 1005, in render
    return concat(self.root_render_func(self.new_context(vars)))
  File "/usr/local/lib/python3.7/site-packages/gino_admin/templates/model_view.html", line 14, in root
    </div>
  File "/usr/local/lib/python3.7/site-packages/gino_admin/templates/base.html", line 14, in root
  File "/usr/local/lib/python3.7/site-packages/gino_admin/templates/app.html", line 22, in root
    <script src="https://cdn.rawgit.com/mdehoog/Semantic-UI/6e6d051d47b598ebab05857545f242caf2b4b48c/dist/semantic.min.js"></script>
  File "/usr/local/lib/python3.7/site-packages/gino_admin/templates/base.html", line 31, in block_content
  File "/usr/local/lib/python3.7/site-packages/gino_admin/templates/model_view.html", line 41, in block_body
    <div class="eight wide column left aligned content" id="grid_footer_left"><br>
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 830, in get_template
    return self._load_template(name, self.make_globals(globals))
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 804, in _load_template
    template = self.loader.load(self, name, globals)
  File "/usr/local/lib/python3.7/site-packages/jinja2/loaders.py", line 125, in load
    code = environment.compile(source, name, filename)
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 591, in compile
    self.handle_exception(exc_info, source_hint=source_hint)
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 780, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/usr/local/lib/python3.7/site-packages/jinja2/_compat.py", line 37, in reraise
    raise value.with_traceback(tb)
  File "/usr/local/lib/python3.7/site-packages/gino_admin/templates/data_table.html", line 23, in template
    {% if field is boolean %}
  File "/usr/local/lib/python3.7/site-packages/jinja2/environment.py", line 543, in _generate
    optimized=self.optimized)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 82, in generate
    generator.visit(node)
  File "/usr/local/lib/python3.7/site-packages/jinja2/visitor.py", line 38, in visit
    return f(node, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 754, in visit_Template
    self.blockvisit(node.body, frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 378, in blockvisit
    self.visit(node, frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/visitor.py", line 38, in visit
    return f(node, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 1122, in visit_For
    self.blockvisit(node.body, loop_frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 378, in blockvisit
    self.visit(node, frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/visitor.py", line 38, in visit
    return f(node, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 1122, in visit_For
    self.blockvisit(node.body, loop_frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 378, in blockvisit
    self.visit(node, frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/visitor.py", line 38, in visit
    return f(node, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 1160, in visit_If
    self.blockvisit(node.body, if_frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 378, in blockvisit
    self.visit(node, frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/visitor.py", line 38, in visit
    return f(node, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 1157, in visit_If
    self.visit(node.test, if_frame)
  File "/usr/local/lib/python3.7/site-packages/jinja2/visitor.py", line 38, in visit
    return f(node, *args, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 70, in new_func
    return f(self, node, frame, **kwargs)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 1607, in visit_Test
    self.fail('no test named %r' % node.name, node.lineno)
  File "/usr/local/lib/python3.7/site-packages/jinja2/compiler.py", line 315, in fail
    raise TemplateAssertionError(msg, lineno, self.name, self.filename)
xnuinside commented 3 years ago

@mcorbe hi! thank you for the report, I will check and return to you. Also can you check jinja2 version in you environment? what it is?

xnuinside commented 3 years ago

@mcorbe I think I found the reason, I just released version 0.2.3a1 please try to install gino-admin==0.2.3a1 and check if it helps.

mcorbe commented 3 years ago

@xnuinside works great :+1: thank you. Do you plan to release a 0.2.3 ?

xnuinside commented 3 years ago

@mcorbe yes, I glad that it works. I will release it today later after work. Want to add also few more fixes )

xnuinside commented 3 years ago

@mcorbe, gino-admin==0.2.3 with fix was released, if there is no issue anymore, can I close it?

mcorbe commented 3 years ago

Works great now, thanks for the fix.