Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

फ्लास्क-SQLAlchemy अद्यतन MySQL में एक नया रिकॉर्ड बना रहा है

ठीक है, इसलिए मुझे सही दिशा में इंगित करने के लिए डैनियल और डोबेह का धन्यवाद। मूल रूप से यह मेरे लिए नीचे आया कि संपादित_एंट्री की POST विधि में blog_id का ठीक से अनुरोध नहीं किया। यहाँ नया (और काम करने वाला) कोड है।

def edit_entry():
    form = BlogEntry()
    if request.method == 'POST':
        blog_id = request.form.get('blog_id')
        update = db.session.query(models.Blog).filter_by(id = blog_id).update({
             'title': request.form.get('title'),
             'content': request.form.get('content')
        })
        db.session.commit()
        return redirect(url_for('blog'))
    elif request.method == 'GET':
        blog_id = int(request.args['blog_id'])
        post = models.Blog.query.filter_by(id = blog_id).first_or_404()
        context = {
            'copyright': COPYRIGHT,
            'form': form,
            'blog_id': blog_id
        }
        form.title.data = post.title
        form.content.data = post.content
        return render_template('edit_entry.html', **context)

दो प्रमुख मुद्दों के रूप में समाप्त हो गया। मुट्ठी एक निरीक्षण था:जब मैंने new_entry टेम्पलेट से edit_entry टेम्पलेट की प्रतिलिपि बनाई, तो मैं फॉर्म की क्रिया को बदलना भूल गया, इसलिए फॉर्म वास्तव में new_entry मार्ग पर पोस्ट कर रहा था, इस प्रकार डुप्लिकेशंस। मुझे उस समस्या का पता चलने के बाद, मुझे यह भी एहसास हुआ कि जब blog_id को request.args में 'GET' मेथड में पास किया गया था, तो इसे 'POST' मेथड में पास नहीं किया जा रहा था (चूंकि पोस्ट रीडायरेक्ट से नहीं आ रहा था), इसलिए मैंने वास्तव में blog_id को POST पर वापस भेजने के लिए edit_entry टेम्पलेट में एक नया फ़ील्ड बनाया है।




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. यूनियन mysql क्वेरी को ऑप्टिमाइज़ करें

  2. PHPExcel का उपयोग करके एक MySQL तालिका को फीड करने के लिए XLSX शीट पढ़ना

  3. क्या होगा यदि 2 या अधिक लोग एक ही समय में एक ही MySQL तालिका को अपडेट करने का प्रयास करते हैं?

  4. एंड्रॉइड और PHP - PHP का उपयोग करके MySQL से JSONArray कैसे प्रदर्शित करें?

  5. सभी तालिका/स्तंभ नामों को हाइबरनेट बैककोट करें