Stepping through the page middleware which handles assigning the page
variable will probably shed some light:
https://github.com/stephenmcd/mezzanine/blob/master/mezzanine/pages/middleware.py#L91-L124
On Tue, Apr 22, 2014 at 6:09 PM, PR pavan.ri...@gmail.com wrote:
On Monday, April 21, 2014 12:30:16 PM UTC-4, Eduardo Rivas wrote:
The blog app defines it's own url patterns. For example, the list view
(showing all blog posts) is mapped to /blog by default.
It seem to be that the blog app defines / to be the list view in its
urls.py. Mezzanine includes the blog's urls.py, adding the BLOG_SLUG prefix.
The app I am integrating also defines it's own urls. I simply included
these in my project's urls.py(above the mezzanine catch-all):
(^pastes/, include('dpaste.urls.dpaste')),
Then I created a RichTextPage with the name Pastes and no parent to
match this url. I can successfully visit the dpaste app from the added
navigation link. When I remove the dpaste url include, I can successfully
visit the RichTextPage.
The trick is in creating a page in the admin with the exact same slug.
You have to do this to get Mezzanine to insert the page variable into your
context. In the end, Mezzanine will merge both the context provided by the
page and the context of your own application.
My problem is that I have created the page with the slug but Mezzanine is
not inserting the page variable into my context, so the navigation link
does not receive an active class.
I've done this in the past with a custom Portfolio app and the
integration is seamless. If you want to inspect your template context, list
of templates and other useful debugging info in your browser, you should
use Django Debug Toolbar. Install it with pip install django-debug-tollbar,
Mezzanine will activate it automatically when it detects it's installed;
you should then get a small button in the top-right corner of your site
when running in the development server.
Yes I've done all this, thats how I was able to see that the template was
not being passed the page context variable...
Here is a related screenshot:
https://lh4.googleusercontent.com/-lKB3QXJ_Ud8/U1YijWBoSOI/AJ0/qqZqhwwT3PU/s1600/2014-04-22-040313_1366x768_scrot.png
You can see that a Pastes page exists and that the browser is visiting
the /pastes/ url, however the Pastes link is not shaded as active(and
yes the theme does define a different color for active tabs, it works
fine for the blog app).
The breadcrumb only exists because I hardcoded it into the template, which
would be unneeded if the page variable was inserted.
--
You received this message because you are subscribed to the Google Groups
Mezzanine Users group.
To unsubscribe from this group and stop receiving emails from it, send an
email to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
--
Stephen McDonald
http://jupo.org
--
You received this message because you are subscribed to the Google Groups
Mezzanine Users group.
To unsubscribe from this group and stop receiving emails from it, send an email
to mezzanine-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.