Update README

master
Steven Loria 11 years ago
parent c8d07d0d29
commit e3286524df
  1. 16
      README.rst
  2. 1
      {{cookiecutter.app_name}}/tests/factories.py
  3. 5
      {{cookiecutter.app_name}}/{{cookiecutter.app_name}}/user/models.py

@ -24,7 +24,7 @@ Features
- Flask-Login for authentication - Flask-Login for authentication
- Flask-Bcrypt for password hashing - Flask-Bcrypt for password hashing
- Procfile for deploying to a PaaS (e.g. Heroku) - Procfile for deploying to a PaaS (e.g. Heroku)
- Flask-Testing, Flask-Webtest, nose, and Factory-Boy for testing (example tests included) - pytest and Factory-Boy for testing (example tests included)
- A simple ``manage.py`` script. - A simple ``manage.py`` script.
- CSS and JS minification using Flask-Assets - CSS and JS minification using Flask-Assets
- Optional bower support for frontend package management - Optional bower support for frontend package management
@ -59,11 +59,25 @@ Inspiration
License License
------- -------
BSD licensed. BSD licensed.
Changelog Changelog
--------- ---------
0.4.0 (04/19/2014)
******************
- Add ReferenceCol for less verbose foreign key columns.
- Add SurrogatePK mixin for adding integer primary key to a model.
- Add base Model class that has CRUD convenience methods.
- Fix setting BCrypt encryption complexity. Tests are much faster.
- Add Role model to show ReferenceCol usage.
- Switch to pytest.
- Upgrade all out-of-date requirements.
- More test examples.
- Remove "year" from cookiecutter.json (just change LICENSE if necessary).
0.3.2 (02/26/2014) 0.3.2 (02/26/2014)
****************** ******************

@ -26,4 +26,3 @@ class UserFactory(BaseFactory):
email = Sequence(lambda n: "user{0}@example.com".format(n)) email = Sequence(lambda n: "user{0}@example.com".format(n))
password = PostGenerationMethodCall('set_password', 'example') password = PostGenerationMethodCall('set_password', 'example')
active = True active = True

@ -23,6 +23,9 @@ class Role(SurrogatePK, Model):
def __init__(self, name, **kwargs): def __init__(self, name, **kwargs):
db.Model.__init__(self, name=name, **kwargs) db.Model.__init__(self, name=name, **kwargs)
def __repr__(self):
return '<Role({name})>'.format(name=self.name)
class User(UserMixin, SurrogatePK, Model): class User(UserMixin, SurrogatePK, Model):
__tablename__ = 'users' __tablename__ = 'users'
@ -54,4 +57,4 @@ class User(UserMixin, SurrogatePK, Model):
return "{0} {1}".format(self.first_name, self.last_name) return "{0} {1}".format(self.first_name, self.last_name)
def __repr__(self): def __repr__(self):
return '<User {username!r}>'.format(username=self.username) return '<User({username!r})>'.format(username=self.username)

Loading…
Cancel
Save