kalobtaulien / wagtail-livepreview Goto Github PK
View Code? Open in Web Editor NEWWagtail Live Preview lets you view your page changes as you make them in the Wagtail Admin.
License: Other
Wagtail Live Preview lets you view your page changes as you make them in the Wagtail Admin.
License: Other
Can't delete a page that is referenced in the table livepreview_livepreviewrevision
django.db.utils.IntegrityError: update or delete on table "wagtailcore_page" violates foreign key constraint "livepreview_liveprev_page_id_a0bcd10f_fk_wagtailco" on table "livepreview_livepreviewrevision"
File "/usr/local/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner response = get_response(request)
File "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py", line 115, in _get_response response = self.process_exception_by_middleware(e, request)
File "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py", line 113, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python3.8/site-packages/django/views/decorators/cache.py", line 44, in _wrapped_view_func response = view_func(request, *args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/wagtail/admin/urls/__init__.py", line 110, in wrapper return view_func(request, *args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/wagtail/admin/auth.py", line 188, in decorated_view return view_func(request, *args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/wagtail/admin/views/pages.py", line 792, in delete return redirect(next_url)
File "/usr/local/lib/python3.8/site-packages/django/db/transaction.py", line 232, in __exit__ connection.commit()
File "/usr/local/lib/python3.8/site-packages/django/utils/asyncio.py", line 26, in inner return func(*args, **kwargs)
File "/usr/local/lib/python3.8/site-packages/django/db/backends/base/base.py", line 267, in commit self._commit()
File "/usr/local/lib/python3.8/site-packages/django/db/backends/base/base.py", line 243, in _commit return self.connection.commit()
File "/usr/local/lib/python3.8/site-packages/django/db/utils.py", line 90, in __exit__ raise dj_exc_value.with_traceback(traceback) from exc_value
File "/usr/local/lib/python3.8/site-packages/django/db/backends/base/base.py", line 243, in _commit return self.connection.commit() django.db.utils.IntegrityError: update or delete on table "wagtailcore_page" violates foreign key constraint "livepreview_liveprev_page_id_a0bcd10f_fk_wagtailco" on table "livepreview_livepreviewrevision"
Livepreview is removing all the script tags in the generated HTML. (https://github.com/KalobTaulien/wagtail-livepreview/blob/master/livepreview/static/livepreview/js/livepreview_fe.js#L4)
Javascript could be used to position elements, to apply CSS styles, to add lazy loading, etc. Removing all the scripts from the page could greatly affect the view of the page (even for simple sites that don't use any JS framework).
It would be great to stop removing all the script tags in the HTML, as this can affect the preview of the pages.
Maybe the stripScripts
function should only remove the scripts inside the div with the class js-livepreview-script
?
Wagtail 2.10 will have lots of template changes and might not be compatible with this package.
I'd LOVE if someone could test this out with 2.10 and report back (may need to work on #15 first).
Nice package, @KalobTaulien !
Opening this "issue" so as to not forget:
https://github.com/torchbox/wagtail-headless-preview has live preview capabilities. I did not get a chance to test the two together, but think there is scope for them to work in tandem.
Will try to get some time to investigate. Will report back with the findings and any tweaks we may need to make.
In wagtail 2.9 and later, request.site
will not be available (or deprecated).
Creating a translated page using wagtailtrans is always showing the language as the user wagtail language (in this case 'en') instead of the real page locale in the livepreview window
Even when we set LIVEPREVIEW_USE_FILE_RENDERING=False application tries to make a folder to store rendered page. It could be easily fixed by changing this code
in views.py
line 123
file_name = self.get_live_preview_file_name(page_id, request.user.id)
use_file_rendering = getattr(settings, "LIVEPREVIEW_USE_FILE_RENDERING", True)
if use_file_rendering and os.path.isfile(file_name):
with open(file_name, 'r') as file:
page_content = file.read()
return HttpResponse(page_content)
to
use_file_rendering = getattr(settings, "LIVEPREVIEW_USE_FILE_RENDERING", True)
if use_file_rendering:
file_name = self.get_live_preview_file_name(page_id, request.user.id)
if os.path.isfile(file_name):
with open(file_name, 'r') as file:
page_content = file.read()
return HttpResponse(page_content)
Hey.
This app is a nice idea and i'd like to use it in my project (and maybe contribute in a future with some improvements) but currently i have a problem with page in "live preview" mode.
The problem is than in template {{ request.site }} returns None when page is rendered by live_preview endpoint. I have no idea where to find a problem.
Wagtail's vanilla "preview" endpoint works well. Do you have any clues?
There is a Toggle live preview button that shows and hides the livepreview window, but when you load a page it always shows the window by default. It would be great to have an option in settings HIDE_LIVEPREVIEW
to hide the window by default when someone is editing a page.
Also, sometimes you want to show livepreview in some environments (Staging and Dev) and hide it in others (Production). It would be very useful to have another option in settings DISABLE_LIVEPREVIEW
to disable livepreview globally.
File "/Users/andy/projects/po-website/.venv/lib/python3.8/site-packages/livepreview/wagtail_hooks.py", line 9, in
from django.contrib.staticfiles.templatetags.staticfiles import static
ModuleNotFoundError: No module named 'django.contrib.staticfiles.templatetags'
When i click "live preview" button it opens a new window with page preview. It refreshes in "real time" when i modify my page form so this works OK - but it stops working when i "hide" the iframe on right side of page form. If i show it again the separate full windows refreshes again.
// EDIT
OK i see that when i turn off iframe form does not make POST to live_preview thats why this separate full windows does not see changes when refreshes body.
Do you have any idea why it happens and how to fix it?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.