Skip to main content
# Django PyOWM

A Django ORM interface for PyOWM domain entities


## Requirements

- Django 1.10+
- PyOWM 2.5+

Python 2.7 is supported.


** Please notice that the API can be unstable as this project is still in beta testing **

## Install

Install the library with `pip`:

```shell
$ pip install django_pyowm
```

Then add `django_pyowm` to the `INSTALLED_APPS` list into your Django project's `settings.py` file:

```python
INSTALLED_APPS = [
...
'django_pyowm' # <---
]
```

Finally generate tables by applying migrations:

```shell
$ python manage.py makemigrations django_pyowm
$ python manage.py migrate
```


## Features
Models behave as all other Django models but they have a few useful
functions:

- `<Model_class>.from_entity(entity)` - creates a PyOWM model instance
from the corresponding PyOWM domain object instance
- `<Model_instance>.to_entity(entity)` - turns the model instance to
the corresponding PyOWM domain object instance
- `<Model_class>.save_all()` - persists the model instance along with all related objects

## Quick usage examples

```python
from pyowm import OWM
from django_pyowm import models


# Get data an Observation from the API
owm = OWM(API_key='my_key')
obs = owm.weather_at_place('London,UK')

# Create a model instance from API response
m = models.Observation.from_entity(obs)

# Save related objects and then the model itself
m.location.save()
m.weather.save()
m.save()

# .. or save everything in one shot
m.save_all()

# From model instance to entity
original_obs = m.to_entity()
```

## Testing
All details about testing are [here](https://github.com/csparpa/django-pyowm/wiki/Testing)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_pyowm-0.2.0.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_pyowm-0.2.0-py2.7.egg (21.8 kB view details)

Uploaded Egg

File details

Details for the file django_pyowm-0.2.0.tar.gz.

File metadata

  • Download URL: django_pyowm-0.2.0.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for django_pyowm-0.2.0.tar.gz
Algorithm Hash digest
SHA256 d5ca9bc64a98307fc1a1e4c49cf375d9e487aaa9ab6a9d8436fa30ddd2c315cc
MD5 766154b22ecd3599cb766bacd525bf9c
BLAKE2b-256 16de8663a13d0b7052f9e52608892a693abb41619070372b01e2a0b6f8c25ad3

See more details on using hashes here.

File details

Details for the file django_pyowm-0.2.0-py2.7.egg.

File metadata

File hashes

Hashes for django_pyowm-0.2.0-py2.7.egg
Algorithm Hash digest
SHA256 5b2715448a2e345ac8fa4def727fa772a383adddf5bc8f50639c38fb03253de9
MD5 36d337889feb730f47b50055971ce793
BLAKE2b-256 6fec937099134bb9bf5bb207d08c09460c7e69da2a24398ec711db98c333c1d3

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

0.1.0

3 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page