Respite

Logiciel capture d'écran:
Respite
Détails logiciels:
Version: 1.0.0
Date de transfert: 15 Apr 15
Développeur: Johannes Gorset
Licence: Gratuit
Popularité: 3

Rating: nan/5 (Total Votes: 0)

Le répit est une application qui est conforme à Django Representational State Transfer (REST).
Utilisation
Apprêt
Répit est influencée par Ruby on Rails, bien dans l'esprit de Python, il ne est pas aussi «magique». Il sera, toutefois, vous faire économiser beaucoup de code:
# Nouvelles / models.py
à partir de modèles django.db d'importation
classe article (models.Model):
& Nbsp; title = models.CharField (max_length = 255)
& Nbsp; content = models.TextField ()
& Nbsp; publié = True
& Nbsp; created_at = models.DateTimeField (auto_now_add = True)
# Nouvelles / urls.py
from django.conf.urls.defaults importer *
de ressources respite.urls d'importation
de vues importation articleview
urlpatterns = ressources (
& Nbsp; prefix = 'nouvelles / articles »,
& Nbsp; view = articleview
)
# Nouvelles / views.py
de répit importation Voir
à partir de modèles importation Article
articleview de classe (View):
& Nbsp; modèle = article
& Nbsp; template_path = 'nouvelles / articles'
& nbsp; supported_formats = ['html', 'json']
# templates / nouvelles / articles / index.html


& Nbsp;
& Nbsp; {{article.title}}
& Nbsp;
& Nbsp;
& Nbsp; {% pour l'article dans les articles%}
& Nbsp;


& Nbsp;

{{article.title}}


& Nbsp; {{}} article.created_at
& Nbsp;


& Nbsp; {{}} article.content
& Nbsp;


& Nbsp;

& Nbsp;% {endfor%}
& Nbsp;

# templates / nouvelles / articles / index.json
# ...
actions par défaut
Voir la classe de répit définit les actions pour la visualisation et la manipulation des instances de modèle; index, spectacle, nouvelle, créer, éditer et sbquo; mettre à jour et de détruire.
Méthode HTTP HTTP chemin Fonction But
GET articles / index Render une liste d'articles
GET articles / nouvelles Nouveaux renders un formulaire pour créer un nouvel article
articles POST / Créer Créer un nouvel article
GET articles / 1 montrent Render un article spécifique
GET articles / 1 / modifier modifier rendre un formulaire pour éditer un article spécifique
articles PUT / une mise à jour de Modifier un article spécifique
Supprimer les articles / 1 détruisent Supprimer un article spécifique
En un mot, relève vous offre une collection de fonctionnalités dont vous avez besoin probablement pour la plupart de vos modèles et les achemine paisiblement. Vous pouvez remplacer tout ou partie de ces fonctions et les personnaliser comme vous le souhaitez. Par exemple, vous ne pouviez la liste des articles qui ont été publiés:
# Nouvelles / views.py
articleview de classe (View):
& Nbsp; modèle = article
& Nbsp; template_path = 'nouvelles / articles'
& nbsp; supported_formats = ['html', 'json']
& Nbsp; def index (auto, demande):
& Nbsp; articles = self.model.objects.filter (publié = True)
& Nbsp; retour self._render (
& Nbsp; request = demande,
& Nbsp; «index» = modèle,
& Nbsp; context = {
& nbsp; '' articles: articles,
& Nbsp;},
& Nbsp; status = 200
& Nbsp;)
Vous pouvez également omettre une ou plusieurs des actions par défaut tout à fait. Par exemple, vous ne pouviez mettre en œuvre les actions d'index et show:
# Nouvelles / urls.py
from django.conf.urls.defaults importer *
de ressources respite.urls d'importation
de vues importation articleview
urlpatterns = ressources (
& Nbsp; prefix = 'nouvelles / articles »,
& Nbsp; view = articleview,
& Nbsp; actions = ['index', 'show']
)
Les actions personnalisées
Vous n'êtes pas limité à sept actions prédéfinies de répit; vous pouvez ajouter ne importe quel nombre d'actions personnalisées et les acheminer vous Cependant, comme:
# Nouvelles / urls.py
from django.conf.urls.defaults importer *
de respite.urls importent ressources, l'action
de vues importation articleview
urlpatterns = ressources (
& Nbsp; prefix = 'nouvelles / articles »,
& Nbsp; view = articleview,
& nbsp; custom_actions = [
& Nbsp; action (
& Nbsp; regex = r '(? P [0-9] +).? / L [a-zA-Z] * $ »,
& Nbsp; la fonction = 'aperçu',
& Nbsp; méthodes = ['GET'],
& Nbsp; name = 'preview_news_article'
& Nbsp;)
& Nbsp;]
)
# Nouvelles / views.py
de répit importation Voir
à partir de modèles importation Article
articleview de classe (View):
& Nbsp; modèle = article
& Nbsp; template_path = 'nouvelles / articles'
& nbsp; supported_formats = ['html', 'json']
& Nbsp; def aperçu (auto, demande, id):
& Nbsp; article = Article.objects.get (id = id)
& Nbsp; retour self._render (
& Nbsp; request = demande,
& Nbsp; template = 'aperçu',
& Nbsp; context = {
& Nbsp; «article»: l'article
& Nbsp;},
& Nbsp; status = 200
& Nbsp;)
Installation
- Pip installer git + http: //github.com/jgorset/respite.git
- Ajouter un répit aux INSTALLED_APPS dans votre fichier de paramètres
- Ajouter à respite.middleware.HTTPPUTMiddleware MIDDLEWARE_CLASSES dans votre fichier de paramètres
Si vous n'êtes pas seulement la construction d'une API, vous pouvez également ajouter respite.middleware.HTTPMethodOverrideMiddleware à vos classes de middleware; il facilite pour des raisons impérieuses de la méthode HTTP avec l'en-tête X-HTTP-Méthode-Override ou un paramètre POST _method HTTP, qui est la seule façon de mettre à jour (PUT HTTP) et supprimer (HTTP DELETE) des ressources à partir d'un navigateur Web.

Exigences :

  • Python
  • Django

D'autres logiciels de développeur Johannes Gorset

Kronos
Kronos

14 Apr 15

Facepy
Facepy

1 Mar 15

Commentaires à Respite

Commentaires non trouvées
Ajouter un commentaire
Tourner sur les images!