3 ms·
Great short and concise article. I'm in the process of writing a pet project using Django and would really appreciate your insights on what packages you find u
by hiddentaco 13y ago
Great short and concise article.
I'm in the process of writing a pet project using Django and would really appreciate your insights on what packages you find useful (as mentioned at the bottom of your post).
- deleted 13y ago[deleted]
- obviouslygreen 13y agoFrom someone who wasn't asked but has input... ;) It's not a Python package in the sense that you might mean, but using virtualenv is absolutely fundamental to good Python development (at least the kind that lets you keep your sanity). South is also exceptional; however, the developer recently ran a successful Kickstarter campaign dedicated to creating an improved version intended to be merged with Django itself, so that's something to watch for. Django-CMS has proven invaluable for many of my projects and clients, though it's very heavy and more of a project-tacked-on-to-your-project than just a package. It's great to know, though, and very powerful. django-registration can be useful if you're into full-on user profile usage, though many sites don't actually need this. There's a separate project that provides a set of default templates for this package, and it's almost more useful than django-registration itself. livesettings is an outgrowth of django-cms that's pretty useful when you need what would otherwise be settings.py constants that can be modified at runtime without a deployment and server restart. Be careful, though, as overuse of this means you might have design issues. feedparser is a very, very easy way to consume XML feeds. If you want to parse something in a very user-friendly way, BeautifulSoup is hard to beat. If you're into the nitty gritty and/or need serious performance, lxml serves the same purpose but kicks far more ass. If you need to interface with Amazon's AWS environments (EC2, S3, etc.), boto is a brilliant library. These are more Python-in-general than Django-specific, but that's often a good thing.
- hiddentaco 13y agoThanks for the reply. While all suggestion are useful the biggest take away for me is livesettings. TBH I can't think of how I would use it at the moment but I can see that it could come in handy later.
- tacticus 13y agoSo a stupid question about virtualenv for you. Why does it default to full paths for everything?
- obviouslygreen 13y agoHonestly, I have no idea. I haven't ever tried to move a virtualenv, and it's not something that's supposed to be part of your repo (you should build your env separately on every box; it's intended to encapsulate dependencies from the system, not to transfer them around with your code). If your system gets updated/upgraded to the point where your virtualenv breaks, rebuild it from scratch; all it should take is a bit of time. [edit: I am not a developer involved with virtualenv, and the statement about what it's intended for probably shouldn't be quite so strong, as this is only my impression of it and the way I use it.]
- chrisdl 13y agoI actually don't "know" either. But I suspect it has to do with knowing which python to use (system generally) and if the user wants to use global packages as well. checkout virtualenvwrapper (http://virtualenvwrapper.readthedocs.org/en/latest/install.html http://virtualenvwrapper.readthedocs.org/en/latest/install.h...) as well for handling virtualenvs.
- obviouslygreen 13y ago+1, I definitely should have mentioned this. virtualenvwrapper makes it vastly more convenient.
- dangoldin 13y agoAuthor here - thanks for mentioning this! I've never used it but will give it a go.