def board_check(form, field): """ 检查板块是否存在,是否可以允许当前用户创建文章或写入 """ try: board_id = to_bin(field.data) except TypeError: raise ValidationError('板块ID无效') board = Board.get_by_id(board_id) if not board: raise ValidationError('板块不存在') can_post_rank = 100 if set(form.view.roles) & {'forum_master', 'superuser', 'admin'} else 0 if can_post_rank >= board.can_post_rank: return True raise ValidationError('没有权限选择此板块')