Hi Shai Berger and thanks for your quick response.
Regarding your criticisms,
On Thursday, May 30, 2013 7:54:40 AM UTC+2, Shai Berger wrote:
>
> Actually, Django doesn't. That is, an app is a Python package, and Python
> packages can be nested, so you can have app 'b' within app 'a', and in
> your
> installed-apps, have both 'a' and 'a.b'. That will work fine. But as far
> as
> Django is concerned, they are just two separate apps.
>
>
I completely understand your point, and I think this is a very important
point. I agree when you say that "as far as Django is concerned, they are
just two separate apps.". However, I believe that Django do allow nested
apps. Allowing means not trowing an error when the developer does it. If
django gives the developer the freedom to do it, it is because it allows it.
This motivates going back one step on my reasoning and put the following
questions:
Why python allows nested apps?
What would be the reason for a developer to nest apps?
should django allow this?
why should django allow this?
I leave this questions open to discussion.
App names must be unique
>
Yes, I agree with you, app names are unique. I'm not arguing that any of
this would change.
Flat is better than nested.
Thanks for pointing this out, and I believe this is a valid point. However,
what I want to add is that I don't believe this renders my solution moot
because Zen of python is used when two implementations give the same
functionality. Otherwise python wouldn't allow nested apps...
What I'm proposing is a different functionality, which reduces to the
current functionality if the developer doesn't do anything.
The problem you raise -- of name-collisions between elements in apps -- is
> valid, but is a result of a long-standing decision; you will need very
> convincing arguments to change that.
Good that there is at least something valid! What I want to emphasize is
that while programming this solution in my website, I ended up no longer
having this problem, ever. I don't have any url name, any template with app
prefix, any. What I want to try to understand with this post is: how does
my solution can be used to improve django, and how can my solution be used
in django without damaging anything else.
Hope this helps to clarify some of your concerns Shai Berger.
Cheers,
Jorge
--
You received this message because you are subscribed to the Google Groups
"Django developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/django-developers?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.