Ich benutze Slugify, und ich habe keine Ahnung, wie ich meinen Beitrag Titel slugified, muss ich eine neue Spalte in meinem Beitrag machen? Ich bin den ganzen Tag drangeblieben.Wie verschicken Sie eine URL?
Irgendwelche Vorschläge?
Views.py
@app.route('/posts/<title>')
@login_required
def show(title):
link = db.session.query(Post).filter_by(title = title).one()
link2 = slugify(link.title)
return render_template("post.html", post=link2, pid=id, title=link2)
Models.py
class Post(db.Model):
__tablename__ = "posts"
id = db.Column(db.Integer, primary_key=True)
title = db.Column(db.String(80))
body = db.Column(db.Text)
def __init__(self, title, body):
self.title = title
self.body = body
Fehlermeldung
File "C:\Program Files\Python35-32\lib\site-packages\sqlalchemy\orm\query.py", line 2760, in one
raise orm_exc.NoResultFound("No row was found for one()")
sqlalchemy.orm.exc.NoResultFound: No row was found for one()
Try loggin 'title'. Wird es richtig empfangen? –
Der Fehler besagt nur, dass es keine Zeile finden kann, während Sie eine Zeile erwarten. Normalerweise verwende ich etwas wie 'Post.query.filter_by (title = title) .first()', dann überprüfe, ob das Ergebnis null ist oder nicht. –
@btquanto können Sie umformulieren, dass ich nicht verstehe? –