Skip to content

Instantly share code, notes, and snippets.

View filipeximenes's full-sized avatar

Filipe A Ximenes filipeximenes

View GitHub Profile
@filipeximenes
filipeximenes / list_wrapper_example.py
Created February 1, 2014 14:37
REST Experimentations
from rest_framework import serializers
from core.serializers import ListWrapperSerializer
from .models import Band
class BandListSerializer(serializers.ModelSerializer):
class Meta:
model = Band
@filipeximenes
filipeximenes / fabfile.py
Created February 26, 2014 20:10
fabfile.py
from fabric.api import *
from fabvenv import virtualenv, make_virtualenv
import server_config
env.roledefs = {
'django': server_config.DJANGO_HOSTS,
'django_provision': server_config.PROVISION_DJANGO_HOSTS,
}
var successCallback = function(result) {
console.log('audio callback ' + JSON.stringify(result));
if (result.type==='progress') {
console.log('progress/duration/available - ' + result.progress + '/' + result.duration + '/' + result.available); // available not currently supported
} else if (result.type==='state') {
console.log('status - ' + result.state + '/' + result.description);
} else if (result.type==='error') {
console.log('error - ' + result.reason);
} else if (result.type==='current') {
console.log('current audio ' + JSON.stringify(result.audio));
from tapioca.exceptions import ClientError, ServerError
from my_wrapper import MyWrapper
api = MyWrapper()
try:
r = api.my_resource().post(data={'test': 'data'})
except ClientError as e:
print('This is a client error with status code %s' % e.client().response().status_code)
except ServerError as e:
@filipeximenes
filipeximenes / class_metaclass.py
Last active January 22, 2016 20:28
Python Metaclasses
# executando algo antes da criação
class MeuTipo(type):
def __new__(cls, name, parents, dct):
print 'aqui!'
return super(MeuTipo, cls).__new__(cls, name, parents, dct)
class MinhaClasse(object):
__metaclass__ = MeuTipo
# trocando o nome da class
@filipeximenes
filipeximenes / urls.py
Created February 3, 2016 19:15
Django view pattern
url(r'^example/$', 'account.views.example_view', name='user_info'),
@filipeximenes
filipeximenes / permissions.py
Last active March 2, 2016 21:32
Django-rest-framework Permission to simplify per view permission verification
from rest_framework import permissions
class CustomViewPermission(permissions.BasePermission):
def has_permission(self, request, view):
if hasattr(view, 'custom_permission'):
return view.custom_permission(request)
return True
@filipeximenes
filipeximenes / categorize.py
Last active March 22, 2016 22:36
Categorize
def categorize(lst, attrs):
"""
Generate a dictionary of lists where the keys are generated from
some specified attribute of the items in the list
"""
def dive_in(obj, attrs, index=0):
if not obj or index >= len(attrs):
return obj
new_obj = getattr(obj, attrs[index])
if len(attrs) > 0:
@filipeximenes
filipeximenes / models.py
Last active January 11, 2017 18:12
Django REST Framework tests
from django.db import models
class Bike(models.Model):
COLOR_OPTIONS = (('yellow', 'Yellow'), ('red', 'Red'), ('black', 'Black'))
color = models.CharField(max_length=255, null=True, blank=True,
choices=COLOR_OPTIONS)
size = models.DecimalField(max_digits=4, decimal_places=2, null=True, blank=True)
import mock
from django.test import TestCase
from django.contrib.auth.models import User
class EmailTests(TestCase):
def setUp(self):
self.user = User.objects.create(
username='theusername', email='the@email.com',
first_name='Filipe', last_name='Ximenes',