을 편집 할 수있는 형태로로드 pymongo 데이터 :플라스크, pymongo, 양식 - 내가 달성하기 위해 노력하고 무엇
을 나는 텍스트 필드와 이미지를 저장 처음부터 아주 간단한 관리 인터페이스를 구축을 위해 노력하고있다 mongodb. 그런 다음 사용자는 로그인하여 사이트의 내용을 약간 변경할 수 있습니다.
내 문제와 내가이 혼란 스러워요 생각 여기서
가 보여주는 기존의 DB 기록과 형태를 생성하는 pymongo 가능하다 (그래서 그들은 편집 DB에 업데이트 할 수 있습니다)? 문제를 이해하려고 시도한 후에, 나는 Pongongo로 직접 WTForm을 사용할 수 있는지 또는 MongoEngine과 같은 객체 기반 매퍼를 사용해야하는지에 대한 혼란이 있다고 생각합니다. 여기
app = Flask(__name__)
# define the mongo connection
app.config['DB_HOST'] = 'mongodb://localhost/'
app.config['DB_PORT'] = 27017
app.config['DB_DBNAME'] = 'my_db'
the_db = PyMongo(app, config_prefix='DB')
#others routes here...
@app.route("/admin/")
def dashboard():
pages = list(the_db.db.pages.find({}))
return render_template('admin.html', pages=pages)
@app.route('/admin/update', methods=['POST'])
def update():
updated = datetime.datetime.utcnow()
page = request.form['page_name']
header = request.form['header']
body = request.form['body']
h_db.db.pages.update_one(
{'page': page},
{'$set':
{
'updated': updated,
'header': header,
'body': body
}
}, upsert=True)
pages = list(the_db({}))
return render_template('admin.html', pages=pages)
템플릿입니다 :
여기 내 플라스크 응용 프로그램입니다이 실제로 정말 간단
{% for i in pages %}
{{ i.page }}<br>
{% endfor %}
{% from "_formhelpers.html" import render_field %}
<form action="/admin/update" autocomplete="on" method="POST">
{{ render_field(form.username) }}
<input type="text" name="page_name" /><br/>
<input type="text" name="header" /><br/>
<input type="TextAreaField" name="body" /><br/>
<input type="submit" name="submit" /><br/>
</form>
이것은 플라스크 위에 장고를 선택한 예입니다. 관리자는 이미 포함되어 있으며 편집보기도 포함되어 있습니다. https://docs.djangoproject.com/ko/1.9/ref/class-based-views/generic-editing/#django.views.generic.edit.UpdateView – joshlsullivan