I had the same experience. Django Facebook gave me a few issues in the standard, out-of-the-box configuration, so I looked around and found Fandjango, which worked well (unfortunately, it's only for canvas apps, not a mixed or off-facebook app).
Having said that, I contacted the maintainer of Django-Facebook on Github, and he not only tried to help me at the time, he was kind enough to let me know that a new version came out which should fix the issues I was having. I'll definitely be giving Django-Facebook a try on my next project.
I think we're OT, but : I had the same fear about settings.py, but good practices will win out. Django does allow a lot of configuration (rather than convention) so your django project will need to hold a lot of settings, but I tend to modularize my settings.py into:
from settings_env.convention import *
from settings_env.project import *
from settings_env.logging import *
env = os.environ.get('DJANGO_ENV')
if env == "production" : from settings_env.production import *
elif env == "staging" : from settings_env.staging import *
elif env == "dev" : from settings_env.dev import *
else : from settings_env.local import *
There are still a lot of settings, but, at least, they're organized logically. And my convention.py doesn't change from project to project, so I can pretty much ignore that. project.py just contains overrides to the conventions.
how settings.py gets so large is not only a valid problem in of itself, but also symptom of another problem: it is hard (or at least not obvious) to have configuration that can be changed from the admin.
i've considered implementing something that works similarly to the sites contrib app for this, but it always seems that for it to be useful it needs to hook into django internals more than apps "are supposed to".
Whow, friend just forwarded this to me. Cool to see my project on HackerNews. I'm still brushing up the docs, not quite perfect yet. But to explain what it does:
Django Facebook enables your users to easily register using the Facebook API. It converts the Facebook user data and creates regular User and Profile objects. This makes it easy to integrate with your existing Django application. After registration it gives you access to user's graph. Allowing for applications such as:
Open graph/ Timeline functionality
Posting to a users profile
I've built it for my startup Fashiolista.com and it's currently used in production there with thousands of signups per day. For a demo of the signup flow have a look at Fashiolista's landing page (fashiolista.com)
Before you get started building your application, know that contributions are very welcome. Seriously, if you see a bug or think of an improvement just open a pull request or issue. Feel free to contact me if you have questions.
Updates and tutorials can be found on my blog mellowmorning
Further demos and tutorials will soon be available on django-facebook.com