django-homegate

django-homegate provides IDX3.01 API support for your Django project by closing the gap between python-homegate (https://github.com/arteria/python-homegate) and your real estate Django app.


Keywords
django, homegate, python, real, estate, property
License
MIT
Install
pip install django-homegate==0.1.1

Documentation

Django Homegate

django-homegate (https://github.com/arteria/django-homegate) provides IDX3.01 API support for your Django project by closing the gap between python-homegate (https://github.com/arteria/python-homegate) and your real estate Django app.

Installation

To get the latest stable release from PyPi

$ TODO

To get the latest commit from GitHub

$ pip install -e git+git://github.com/arteria/django-homegate.git#egg=django_homegate

Add django_homegate to your INSTALLED_APPS

INSTALLED_APPS = (
    ...,
    'django_homegate',
)

Usage

django-homegate is a helper app providing a management command to push the new records to Homegate using the API implementation of python-homegate (https://github.com/arteria/python-homegate). If you install from PyPi, this package will be installed as dependency.

To connect you real estate model, register your model in the settings and implement a model manager method that returns all records (real estate objects) to push to Homegate. In addition, a get_idx_record() and published_idx_record() method must be implemented on your real estate model to get access to the data to push to Homegate and to update the status of the record. There is an example provided in django_homegate/models.py.

To register the model do not forget to set the app label in your real estate model, eg. '<real-estate>', and in your settings.py add HOMEGATE_REAL_ESTATE_MODEL = '<your-app>.models.<real-estate-class>'.

The manager method name is ready_to_push(), so

>>> objs = RealEstate.objects.ready_to_push()

will return a QuerySet containing all real estate objects to publish to Homegate. There is an example provided in django_homegate/models.py as well.

In settings.py add HOMEGATE_AGENCY_ID = '<your-agency-id>', HOMEGATE_HOST = '<homegate-host>', HOMEGATE_USERNAME = '<your-username>' and HOMEGATE_PASSWORD = '<your-password>'.

For more info about model managers and app labeling see:

http://www.djangobook.com/en/2.0/chapter10.html

https://docs.djangoproject.com/en/dev/ref/models/options/#django.db.models.Options.app_label

Contribute

If you want to contribute to this project, please perform the following steps

# Fork this repository
# Clone your fork
$ mkvirtualenv -p python2.7 django-homegate
$ python setup.py install
$ pip install -r dev_requirements.txt

$ git co -b feature_branch master
# Implement your feature and tests
$ git add . && git commit
$ git push -u origin feature_branch
# Send us a pull request for your feature branch
Bitdeli badge