file models.py
class Document(db.Model):
__table_name__ = 'document'
nim = db.columns.Integer(primary_key=True)
prodi = db.columns.Text(primary_key=True)
tahun = db.columns.Date(primary_key=True, clustering_order="DESC")
title = db.columns.Text(primary_key=True)
nama_mhs = db.columns.Text()
angkatan = db.columns.Date()
intisari = db.columns.Text()
kata_kunci = db.columns.Text()
pembimbing = db.columns.Text()
file_doc = db.columns.Text()
password = db.columns.Text()
def __repr__(self):
return '<Document %r>' % (self.nim, self.nama_mhs, self.angkatan, self.tahun, self.prodi, self.judul, self.kata_kunci, self.intisari, self.pembimbing, self.password, self.file_doc)
这是我创建的搜索表单,search.html
<from action="{{ url_for('search') }}" method="POST">
<input name="search" type="text" class="form-control" placeholder="Search">
<button type="submit">
</from>
如何输入随机文字?文件views.py方法search()
@app.route('/search', methods=['GET','POST'])
def search()
q1 = sesi.execute(" SELECT title FROM document WHERE title LIKE '%request.form['search']%' ")
return render_template("title_search.html", q1=q1)
title_search.html
{% extends "base.html" %}
{% block content %}
{% include "search_document.html" %}
<hr>
{% for data in q1 %}
<div class="col-md-8">
<h3>Title : <a href="#"> {{ data.title }} </a></h3>
<hr>
</div>
{% endfor %}
{% endblock %}
我在跑步时得到了这个
SyntaxException:服务器出错:code = 2000 [CQL中的语法错误 查询]消息=“行1:61在'搜索'中缺少EOF(...文档在哪里 title LIKE'%request.from ['[search]'] ...)“
答案 0 :(得分:1)
更新后这非常有用,根本原因是views.py中的查询字符串无效,您可以更好地格式化查询字符串,如下所示:
@app.route('/search', methods=['GET','POST'])
def search()
q1 = sesi.execute("SELECT title FROM document WHERE title LIKE '%{}%'".format(request.form['search']))
return render_template("title_search.html", q1=q1)
查询字符串就像输入字符串&#34; 物理&#34;到模板中的表单:
"SELECT title FROM document WHERE title LIKE '%Physics%'"
希望它能解决您的问题。