百三〇から三:CMSシステム管理のセクション

 

一般的なモデルの内部を作成するためのモデル

クラスBoardModel(db.Model):
__tablename__ = 'ボード'
ID = db.Column(db.Integer、PRIMARY_KEY = Trueの場合、自動インクリメント=真)
名= db.Column(db.String(20)、NULL可能= Falseのコメント= '板块名')
CREATE_TIME = db.Column(db.DateTime、デフォルト= datetime.now)

インポートマネージャ

データベースの移行を実行します

パイソンmanager.py DB移行
のpython manager.pyデシベルのアップグレード

クラスAddBoardForm(ベースフォーム):
"" "セクションを追加" ""
名前= StringField(バリ= [InputRequired(メッセージ= ')ネームプレートを入力してください'])


クラスUpdateBoardForm(AddBoardFormを):
"" "編集セクションを" ""
内容board_id = IntegerFieldと(バリ= [InputRequired(メッセージ = ' セクションIDを入力')])

ビュー

@bp.route('/aboards/', methods=['POST'])
@login_required
@permission_required(CMSPersmission.BOARDER)
def aboards():
""" 添加板块 """
form = AddBoardForm(request.form)
if form.validate():
name = form.name.data
board = BoardModel(name=name)
db.session.add(board)
db.session.commit()
return restful.success()
else:
return restful.params_error(form.get_error())


@bp.route('/uboards/', methods=['POST'])
@login_required
@permission_required(CMSPersmission.BOARDER)
def uboards():
""" 更新板块 """
form = UpdateBoardForm(request.form)
if form.validate():
board_id = form.board_id.data
name = form.name.data
board = BoardModel.query.get(board_id)
if board:
board.name = name
db.session.commit()
return restful.success()
else:
return restful.params_error('没有这个板块')
else:
return restful.params_error(form.get_error())


@bp.route('/dboards/', methods=['POST'])
@login_required
@permission_required(CMSPersmission.BOARDER)
def dboards():
""" 删除板块 """
board_id = request.form.get('board_id')
if not board_id:
return restful.params_error('请输入板块id')
board = BoardModel.query.get(board_id)
if not board:
return restful.params_error('没有这个板块')
db.session.delete(board)
db.session.commit()
return restful.success()
@bp.route('/boards/')
@login_required
@permission_required(CMSPersmission.BOARDER)
def boards():
""" 板块管理页面 """
boards_model = BoardModel.query.all()
context = {'boards': boards_model}
return render_template('cms/cms_boards.html', **context)

添加板块js

//添加板块
$(function () {
$('#add-board-btn').click(function (event) {
event.preventDefault();
xtalert.alertOneInput({
'text': '请输入板块名称',
'placeholder': '板块名称',
'confirmCallback': function (inputValue) {
ajax.post({
'url': '/cms/aboards/',
'data': {
'name': inputValue
},
'success': function (data) {
if(data['code'] == 200){
window.location.reload();
}else{
xtalert.alertInfo(data['message'])
}
}
});
}
});
});
});

html

{% extends 'cms/cms_base.html' %}
{% from "common/_macros.html" import static %}

{% block title %}板块管理{% endblock %}

{% block head %}
<script src="{{ static('cms/js/boards.js') }}"></script>
{% endblock %}

{% block page_title %}
{{ self.title() }}
{% endblock %}

{% block main_content %}
<div class="top-box">
<button class="btn btn-warning" style="float: right;" id="add-board-btn">添加板块</button>
</div>
<table class="table table-bordered">
<thead>
<tr>
<th>板块名称</th>
<th>帖子数量</th>
<th>创建时间</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{% for board in boards %}
<tr>
<td>{{ board.name }}</td>
<td>0</td>
<td>{{ board.create_time }}</td>
<td>
<button class="btn btn-default btn-xs edit-board-btn">编辑</button>
<button class="btn btn-danger btn-xs delete-board-btn">删除</button>
</td>
</tr>
{% endfor %}

</tbody>
</table>
{% endblock %}

创建一个板块

 

おすすめ

転載: www.cnblogs.com/zhongyehai/p/11967089.html