예제 #1
0
파일: app.py 프로젝트: aabril/flask-peewee
	columns = ('message', 'created',)


class Person(db.Model):
	name = CharField(max_length=50)
	surname = CharField(max_length=50)
	created = DateTimeField(default=datetime.datetime.now)

class PersonAdmin(ModelAdmin):
	columns = ('name','surname','created',)


auth = Auth(app, db)

admin = Admin(app, auth)
admin.register(Note, NoteAdmin)
admin.register(Person, PersonAdmin)
admin.setup()

api = RestAPI(app)
api.register(Note)
api.setup()

if __name__ == '__main__':
	auth.User.create_table(fail_silently=True)
	Note.create_table(fail_silently=True)
	Person.create_table(fail_silently=True)

	app.run()

예제 #2
0
        }


auth = Auth(app, db, user_model=User)
admin = Admin(app, auth)


class MessageAdmin(ModelAdmin):
    columns = ('user', 'content', 'pub_date',)

class NoteAdmin(ModelAdmin):
    columns = ('user', 'message', 'created_date',)


auth.register_admin(admin)
admin.register(Message, MessageAdmin)
admin.register(Note, NoteAdmin)
admin.register_panel('Notes', NotePanel)


class UserResource(RestResource):
    exclude = ('password', 'email',)
    
    def get_query(self):
        return User.filter(active=True)


# rest api stuff
user_auth = UserAuthentication(auth)
admin_auth = AdminAuthentication(auth)
api_key_auth = APIKeyAuthentication(APIKey, ['GET', 'POST', 'PUT', 'DELETE'])
예제 #3
0
class UserStatsPanel(AdminPanel):
    template_name = 'admin/user_stats.html'
    
    def get_context(self):
        last_week = datetime.datetime.now() - datetime.timedelta(days=7)
        signups_this_week = User.filter(join_date__gt=last_week).count()
        messages_this_week = Message.filter(pub_date__gt=last_week).count()
        return {
            'signups': signups_this_week,
            'messages': messages_this_week,
        }


admin = Admin(app, auth)


class MessageAdmin(ModelAdmin):
    columns = ('user', 'content', 'pub_date',)

class NoteAdmin(ModelAdmin):
    columns = ('user', 'message', 'created_date',)


auth.register_admin(admin)
admin.register(Relationship)
admin.register(Message, MessageAdmin)
admin.register(Note, NoteAdmin)
admin.register_panel('Notes', NotePanel)
admin.register_panel('User stats', UserStatsPanel)