wagtailmenus: Wagtail 3.0 error? `TabbedInterface.bind_to_model(model) must be called before get_bound_panel`

When opening a main menu / flat menu edit page, an uncaught error.

Environment

Runing python 3.9, Django 4, Wagtail 3.0

Frontend report

<h1>ImproperlyConfigured
       at /admin/wagtailmenus/flatmenu/edit/3/</h1>
<pre class="exception_value">TabbedInterface.bind_to_model(model) must be called before get_bound_panel</pre>

Request Method: | GET
-- | --
http://localhost:8000/admin/wagtailmenus/flatmenu/edit/3/
4.0.4
ImproperlyConfigured
TabbedInterface.bind_to_model(model) must be called before get_bound_panel
/home/vscode/.cache/pypoetry/virtualenvs/app-xS3fZVNL-py3.9/lib/python3.9/site-packages/wagtail/admin/panels.py, line 235, in get_bound_panel
/home/vscode/.cache/pypoetry/virtualenvs/app-xS3fZVNL-py3.9/bin/python

Full stack trace

Traceback (most recent call last):
File "D:\Users\ani\Documents\venv\lib\site-packages\django\core\handlers\exception.py", line 47, in inner
response = get_response(request)
File "D:\Users\ani\Documents\venv\lib\site-packages\django\core\handlers\base.py", line 181, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "D:\Users\ani\Documents\venv\lib\site-packages\django\views\decorators\cache.py", line 44, in wrapped_view_func
response = view_func(request, *args, **kwargs)
File "D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\urls_init.py", line 161, in wrapper
return view_func(request, *args, **kwargs)
File "D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\auth.py", line 182, in decorated_view
response = view_func(request, *args, **kwargs)
File "D:\Users\ani\Documents\venv\lib\site-packages\wagtail\contrib\modeladmin\options.py", line 445, in edit_view
return view_class.as_view(**kwargs)(request)
File "D:\Users\ani\Documents\venv\lib\site-packages\django\views\generic\base.py", line 64, in view
self.setup(request, *args, **kwargs)
File "D:\Users\ani\Documents\venv\lib\site-packages\wagtail\contrib\modeladmin\views.py", line 161, in setup
self.edit_handler = self.get_edit_handler()
File "D:\Users\ani\Documents\venv\lib\site-packages\wagtailmenus\views.py", line 59, in get_edit_handler
return edit_handler.bind_to(model=self.model)
File "D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\panels.py", line 227, in bind_to
return self.get_bound_panel(instance=instance, request=request, form=form)
File "D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\panels.py", line 237, in get_bound_panel
% type(self).name

Exception Type: ImproperlyConfigured at /gavekal-wagtail-admin/wagtailmenus/mainmenu/edit/2/
Exception Value: TabbedInterface.bind_to_model(model) must be called before get_bound_panel

Relevant code snippets

https://github.com/jazzband/wagtailmenus/blob/8be2790c01688dd3c9ef7298bdebe94575c0a76a/wagtailmenus/views.py#L50-L60

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Reactions: 4
  • Comments: 15 (7 by maintainers)

Commits related to this issue

Most upvoted comments

Alright, I’ll make a PR.

Closed by #424

Thanks everyone for your help! ✌️

Please be aware that release to PyPi is still being blocked by #419 and #409. In the meanwhile, you can get the latest version on GitHub directly.

I want to start a new project with Wagtail 3. When will this bug be fixed.

how can i fix it temporarily

Thank you.

@janbaykara I was actually going to post PR later today. Had to go over the code and documentation to make proper changes during my free time. Sorry that it took long.

Here is the traceback:

Traceback (most recent call last): File “D:\Users\ani\Documents\venv\lib\site-packages\django\core\handlers\exception.py”, line 47, in inner response = get_response(request) File “D:\Users\ani\Documents\venv\lib\site-packages\django\core\handlers\base.py”, line 181, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) File “D:\Users\ani\Documents\venv\lib\site-packages\django\views\decorators\cache.py”, line 44, in wrapped_view_func response = view_func(request, *args, **kwargs) File "D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\urls_init.py", line 161, in wrapper return view_func(request, *args, **kwargs) File “D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\auth.py”, line 182, in decorated_view response = view_func(request, *args, **kwargs) File “D:\Users\ani\Documents\venv\lib\site-packages\wagtail\contrib\modeladmin\options.py”, line 445, in edit_view return view_class.as_view(**kwargs)(request) File “D:\Users\ani\Documents\venv\lib\site-packages\django\views\generic\base.py”, line 64, in view self.setup(request, *args, **kwargs) File “D:\Users\ani\Documents\venv\lib\site-packages\wagtail\contrib\modeladmin\views.py”, line 161, in setup self.edit_handler = self.get_edit_handler() File “D:\Users\ani\Documents\venv\lib\site-packages\wagtailmenus\views.py”, line 59, in get_edit_handler return edit_handler.bind_to(model=self.model) File “D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\panels.py”, line 227, in bind_to return self.get_bound_panel(instance=instance, request=request, form=form) File “D:\Users\ani\Documents\venv\lib\site-packages\wagtail\admin\panels.py”, line 237, in get_bound_panel % type(self).name

Exception Type: ImproperlyConfigured at /gavekal-wagtail-admin/wagtailmenus/mainmenu/edit/2/ Exception Value: TabbedInterface.bind_to_model(model) must be called before get_bound_panel