add option for location
This commit is contained in:
		
							parent
							
								
									52f8848f14
								
							
						
					
					
						commit
						828b597253
					
				| 
						 | 
				
			
			@ -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)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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">
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue