c0ntribut0r / django-mptt-urls Goto Github PK
View Code? Open in Web Editor NEWCreating hierarchical URLs in Django associated with django-MPTT models
License: MIT License
Creating hierarchical URLs in Django associated with django-MPTT models
License: MIT License
how can i access the urls as links?
http://best-photographer.com/gallery/weddings/Dexter-and-Rita/
http://best-photographer.com/gallery/my-pets/dogs/husky/
As of now, your parent field can only be named "parent". Is it possible to specify the parent field in mptt_urls settings like you can do with the slugfield?
Hey, i've set up django-mptt-urls using your documentation, and everything works except if you remove the trailing slash at the end of url, f.e:
localhost.com/category1/category2
i get an error
AttributeError at /category1/category2
'NoneType' object has no attribute 'get_ancestors'
It is said that it raises ValueError, but it gives status 500 on the server.
Do you have any idea how to fix it?
Please add the hint in the readme to add mptt_urls
to settings.INSTALLED_APPS.
Thank you
Hi,
On my routes if I omit the trailing space, the view does not return the instance.
I managed to create a fix with a decorator like this :
def check_trailing_slash(view):
def wrap(request, *args, **kwargs):
path = kwargs['path']
if path.endswith('/'):
return view(request, *args, **kwargs)
else:
uri = request.build_absolute_uri()
return redirect(
uri.replace(path, f"{path}/"),
permanent=True,
)
return wrap
It works but i found the fix a bit ugly.
Is there something I missed with your library to manage this case ?
I think it may be a good idea to note in the docs that the model.get_absolute_url()
function needs to be modified from the example if the user is using namespaced url routing.
For instance, I am building a cms using your django-mptt-urls. I have a page model with the following:
def get_absolute_url(self):
return reverse(
'page:page_view',
kwargs={
'path': self.get_path()
}
)
I had to add the namespace for my app in order for the method to work properly. I feel kind of dumb, but it took me a bit to figure out that that was the problem. If you would like, I can make a pull request and modify the readme myself.
Let me know.
i am a beginner in django mptt urls....thanks in advance
class Category(MPTTModel):
title = models.CharField(max_length =120)
parent = TreeForeignKey('self' , null = True , blank = True , verbose_name='parent category', related_name='categories')
def get_absolute_url(self):
return reverse('categories', kwargs={'path': self.get_path()})
def get_clothes(self):
return Product.objects.filter(category__in=self.get_descendants(include_self=True))
class Product(models.Model):
brand = ForeignKey('Brand', verbose_name='brands', related_name='brand' , default='')
category = TreeForeignKey('Category', verbose_name='categories', related_name='products' , default='')
i have categories like this
men > men clothing > tshirts
my template
{% for product in instance.get_clothes %}
{{ product.title }}
{% endfor %}
how can i filter based on brand and still show the result on the same template ?
I'm currently experimenting with using namespaces in django and noticed that there are errors when adding a namespace to a lower url pattern that the url_mptt gernerated url is attached to.
The failure occurs when the reverse is run inside the model bound get_absolute_url method, as the url is now namespaced it no longer works.
https://github.com/MrKesn/django-mptt-urls/blob/master/mptt_urls/__init__.py#L29
I'll be investigating if there is a way we can pass along namespacing information to get_absolute_url so the lookup can be done correctly.
Hi,
I am trying to use your djang-mptt-urls module, but when I refresh the page, I get this error:
[Wed May 14 21:50:51 2014] [error] [client 127.0.0.1] File "/home/petr/projects/xyz/notespace/core/urls.py", line 3, in
[Wed May 14 21:50:51 2014] [error] [client 127.0.0.1] from mptt_urls import url_mptt
[Wed May 14 21:50:51 2014] [error] [client 127.0.0.1] ImportError: cannot import name url_mptt
I installed the module using pip as was suggested on the readme page. What could be wrong? Any ideas? Thank you!
from brownie import accounts, config
def deploy_simple_storage():
account = accounts.add(config["wallets"]["from_key"])
print(account)
def main():
deploy_simple_storage()
a href="{% url 'categories' path instance %}?query={{query.value}}">{{ query.value }}
why above error is coming when i am passing path and instance from the url ?
i have included path and instance in the context from the view
path = instance.get_absolute_url()
instance = instance
hello ...i followed django-mptt-urls....but i shows data only for the subcategory in which the photos are added but if we click on the category above it doesnt show any data...although it must show all the data present in together in all the below subcategories
for eg
men>menclothing>tshirts
men>menclothing>jeans
when clicking on menclothing it must show data for both tshirts and jeans combined
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.