bottle und POST

Django, Flask, Bottle, WSGI, CGI…
Antworten
djangofish
User
Beiträge: 51
Registriert: Dienstag 16. Oktober 2012, 09:43
Kontaktdaten:

Hallo Gemeinde,

auch heute habe ich wieder eine kleine Nuss für euch zu knacken. Folgendes Problem habe ich, ich schreibe an einer kleinen Blogsoftware und beim Speichern eines neuen Beitrag passiert nichts, wenn ich auf speichern klicke. Es gibt keine Fehlermeldung oä.,...es passiert einfach nix.

HTML-Schnipsel

Code: Alles auswählen

%include('header.tpl')

<p>Neue Bastelgeschichte hinzufügen:</p>
<form action="/article/new" method="POST">
	<h4>Titel</h4>
	<input type="text" size="250" maxlength="250" name="title"><br>
	<h4>Untertitel</h4>
	<input type="text" size="250" maxlength="250" name="subtitle"><br>
	
	<h4>Tags</h4>
	<input type="text" size="250" maxlength="250" name="tags" placeholder="Trennzeichen ist ';'"><br>

	<form name="page_form" action="/articlenew" method="POST">

          <h4>Seite</h4>
          <p>
             <select name='page_list' id = "pages_list">
             %for page in pages:
               <option value = "{{page.id}}">{{page.title}}</option>
             %end
             </select>
          </p>

    </form>

	<h4>Inhalt</h4>
	<textarea name="content" cols="250" rows="10"/></textarea><br>
	<h4>Veröffentlichen</h4>
	<input type="datetime-local" name="release_datetime">
	<input type="submit" name="save" value="save">
</form>
%include('footer.tpl')
Und hier noch die Pythonfunktion

Code: Alles auswählen

@route('/articlenew', method='POST')
@route('/articlenew', method='GET')
@view('new_article')
def new_article():

    if request.POST.get('save','').strip():
        title = request.POST.get('title', '').strip()
        subtitle = request.POST.get('subtitle', '').strip()
        tags = request.POST.get('tags', '').strip().split(';')
        content = request.POST.get('content', '').strip()
        page = request.POST.get('page_list','').strip()
        article = Article(title=title,subtitle=subtitle,page_id=session.query(Page.id).filter_by(title=page).scalar(),content=content)

        session.add(article)
        session.commit()
        tags = set(tags) #remove double entries
        article_id = session.query(Article.id).order_by(Article.id.desc()).first()

        for tag in tags:

            if not session.query(Tag.id).filter_by(name=tag).scalar():
                
                new_tag = Tag(name=tag)
                session.add(new_tag)
                #session.commit()
                session.execute(tag_association_table.insert(), {"tag_id": session.query(Tag.id).filter_by(name=tag).scalar(), "article_id": article_id})
                session.commit()

            else:
                
                session.execute(tag_association_table.insert(), {"tag_id": session.query(Tag.id).filter_by(name=tag).scalar(), "article_id": article_id})
                session.commit()
        
    return {'get_url' : url, 'title' : APP_TITLE, 'pages' : pages}
Kann mir einer einen Tipp geben?

Danke!
BlackJack

@djangofish: 'articlenew' != 'article/new'
djangofish
User
Beiträge: 51
Registriert: Dienstag 16. Oktober 2012, 09:43
Kontaktdaten:

richtig und form in form ist auch doof:)

danke!
Antworten