wagtailtrans icon indicating copy to clipboard operation
wagtailtrans copied to clipboard

Update inheritance of TranslatablePage for better migration support

Open jjanssen opened this issue 7 years ago • 5 comments

At the moment, there are some people experiencing migrating issues when implementing Wagtailtrans, this is due to the inheritance of Page <> TranslatablePage and not allowing to have a None value in the fields page_ptr_id and translatablepage_ptr_id.

To make it easier for people to integrate wagtailtrans we should investigate and try to find a solid solution for this.

jjanssen avatar Apr 10 '17 08:04 jjanssen

I have issues with creating pages in a tree. I can create lang trees of empty pages but I cant populate pages with content. The error when I try to save page is was complaining abot some basic fields can not be empty (slug, title and some one field more I can't remember) The bug is like this one: https://github.com/wagtail/wagtail/issues/1617

I spent some hours debugging this issue. I started from scratch again and again rewriting my page models completely. I excluded any migrations from the process (no migrations being made, I deletet pg database several times and started to populate it again and again). And finally I got it: My page models shoud be inherited stricly from TranslatablePage and not from TranslatablePage, Page as it stated in the documentation: https://wagtailtrans.readthedocs.io/en/latest/getting_started.html

Now my trees works fine, but the info in the docs is wrong.

remort avatar Jul 27 '18 06:07 remort

@remort Thanks for taking the time to log this. The inheritance from both page and translatable page was used in an older version. The docs are updated in pr #128

Henk-JanVanHasselaar avatar Jul 27 '18 07:07 Henk-JanVanHasselaar

Guys, you have outdated docs online. And people have issues making websites following it. Please update the documentation. And thank you for this library. It's great !

remort avatar Jul 27 '18 07:07 remort

I think moving to a mixin would solve this: https://github.com/wagtail/wagtailtrans/issues/152

The only downsides I can think of is it would be a little bit harder to query all pages for a given language and different language versions of a page must be the same type.

The upsides are: much easier initial migration, performance and possibility of using it with snippets

kaedroho avatar Mar 12 '19 12:03 kaedroho

I think so too.

If we provide a utility for querying these pages it shouldn't be a problem. Keeping the page type the same is not changing anything with the current implementation, so shouldn't be a problem either. However we should be careful with migrations, think it's important to have all existing solutions migrate as easy as possible.

Especially like the upsides of moving to a mixin 👍 , think using it with snippets / other objects is definitely a big win, I even think we've created this issue for that case.

mikedingjan avatar Mar 12 '19 14:03 mikedingjan