Hi,

I've started customizing a GeoNode instance and was wondering if other users 
here are trying to do something similar. Mainly to check/discuss if the path 
I'm going makes sense.

The goal is to maintain maximum forward compatibility with the main GeoNode 
repository (painless future updates/merges). At the same time, we obviously 
want a custom design for and add other functionality (Django apps) to our 
GeoNode instance.

So far I've thought about a few approaches:

A) override urls.py with my app's urls.py 
http://github.com/cspanring/geonode/blob/develop/src/GeoNodePy/geonode/urls.py#L16
 and duplicating code from the default GeoNode apps seems like a really bad 
idea.

B) modifying the default templates 
http://github.com/cspanring/geonode/blob/develop/src/GeoNodePy/geonode/templates/page_layout.html#L12
 would break forward compatibility at some point. That solution worked as quick 
hack to have a basic custom design online but I would rather not touch the 
default templates in the long run.

C) specifying templates generally in urls.py 
http://github.com/cspanring/geonode/blob/develop/src/GeoNodePy/geonode/urls.py#L20
 instead of hard-coding them into views would allow users to customize frontend 
designs, like switching templates, pretty easily. That's my favorite approach 
so far but doing that by myself, changing all views to that schema, would 
probably break forward compatibility (seamless merging with future GeoNode 
updates/fixes) of our instance too.

Any other thoughts?

Thanks,
Christian

Please be advised that the Massachusetts Secretary of State considers e-mail to 
be a public record, and therefore subject to the Massachusetts Public Records 
Law, M.G.L. c. 66 ? 10.

Reply via email to