add option for location

This commit is contained in:
jieun 2017-04-11 13:02:12 -04:00
parent 52f8848f14
commit 828b597253
5 changed files with 13 additions and 0 deletions

View File

@ -13,6 +13,7 @@ class LoginForm(Form):
class EditForm(Form):
nickname = StringField('nickname', validators=[DataRequired()])
about_me = TextAreaField('about_me', validators=[Length(min=0, max=140)])
location = TextAreaField('location', validators=[Length(min=0, max=100)])
def __init__(self, original_nickname, *args, **kwargs):
Form.__init__(self, *args, **kwargs)

View File

@ -25,6 +25,7 @@ class User(db.Model):
nickname = db.Column(db.String(64), index=True, unique=True)
email = db.Column(db.String(120), index=True, unique=True)
posts = db.relationship('Post', backref='author', lazy='dynamic')
location = db.Column(db.String(140))
about_me = db.Column(db.String(140))
last_seen = db.Column(db.DateTime)
followed = db.relationship('User',

View File

@ -16,6 +16,14 @@
{% endfor %}
</div>
</div>
<div class="control-group{% if form.location.errors %} error{% endif %}">
<label class="control-label" for="location">{{ _('location:') }}</label>
<div class="controls">
{{ form.location(cols=64, rows=4, class="span4") }}
{% for error in form.location.errors %}
<span class="help-inline">[{{ error }}]</span><br>
{% endfor %}
</div>
<div class="control-group{% if form.about_me.errors %} error{% endif %}">
<label class="control-label" for="about_me">{{ _('About yourself:') }}</label>
<div class="controls">

View File

@ -8,6 +8,7 @@
<img src="{{ user.avatar(128) }}" class="img-polaroid">
</div>
<h1>{{ user.nickname }}</h1>
{% if user.location %}<p>{{ user.location }}</p>{% endif %}
{% if user.about_me %}<p>{{ user.about_me }}</p>{% endif %}
{% if user.last_seen %}
<p><em>{{ _('Last login:') }} {{ momentjs(user.last_seen).calendar() }}</em></p>

View File

@ -156,6 +156,7 @@ def edit():
form = EditForm(g.user.nickname)
if form.validate_on_submit():
g.user.nickname = form.nickname.data
g.user.location = form.location.data
g.user.about_me = form.about_me.data
db.session.add(g.user)
db.session.commit()
@ -163,6 +164,7 @@ def edit():
return redirect(url_for('edit'))
elif request.method != "POST":
form.nickname.data = g.user.nickname
form.location.data = g.user.location
form.about_me.data = g.user.about_me
return render_template('edit.html', form=form)