def replyadd(request): authuser = request.session["authuser"] user_id = authuser["id"] board = Board() board.group_no = request.GET['gno'] board.title = request.POST['title'] board.message = request.POST['message'] board.user_id_id = user_id numbers = Board.objects.get(id=request.GET['id']) if numbers.order_no == 0: board.order_no = numbers.order_no + 1 board.depth = numbers.depth + 1 elif numbers.order_no >= 1: last_ono = Board.objects.filter(group_no=numbers.group_no).aggregate( Max('order_no')) board.order_no = last_ono['order_no__max'] + 1 if board.order_no > numbers.order_no: board.order_no = numbers.order_no + 1 board.depth = numbers.depth + 1 else: last_depth = Board.objects.aggregate(Max('depth')) numbers.depth = last_depth['depth__max'] + 1 board.save() return HttpResponseRedirect("/board")
def reply(request): boardid = request.GET['id'] parent_board = Board.objects.get(id=boardid) newreply = Board() newreply.group_no = parent_board.group_no #group = Board.objects.all().filter(group_no=parent_board.group_no) if parent_board.order_no == 1: # 제일 윗 글에 답글 달 때 max_order_no = Board.objects.filter( group_no=parent_board.group_no).aggregate(Max('order_no')) newreply.order_no = max_order_no['order_no__max'] + 1 newreply.depth = 1 else: # 답글이 여러개 일 때 if parent_board.depth >= 1: # 답글에 답글이 없을 때 oth_reply = Board.objects.all().filter( order_no__gt=parent_board.order_no) oth_reply.update(order_no=F('order_no') + 1) newreply.order_no = parent_board.order_no + 1 newreply.depth = parent_board.depth + 1 newreply.userid_id = request.GET['userid'] newreply.title = request.POST['title'] newreply.content = request.POST['content'] newreply.save() pagenum = request.session['pagenum'] return HttpResponseRedirect("/board/list?page={}".format(pagenum))
def reple(request): new = Board() if request.method == 'POST': id = request.GET['id'] board = Board.objects.get(id=id) new.group_no = board.group_no new.title = request.POST['title'] new.content = request.POST['content'] new.order_no = board.order_no + 1 new.depth = board.depth + 1 authuser = request.session['authuser'] auth_username = authuser.get('name') auth_user_id = authuser.get('id') new.user_name = auth_username new.user_id = auth_user_id new.save() return HttpResponseRedirect("/board/list")
def write(request): if request.session.get('authuser') is not None: post = Board() post.title = request.POST['title'] post.contents = request.POST['contents'] post.order_no = 1 post.user = User.objects.get(id=request.session['authuser']['id']) calc = Board.objects.aggregate(max_group_no=Max('group_no')) # print(calc) try: post.group_no = calc['max_group_no'] + 1 except: post.group_no = 1 post.save() return HttpResponseRedirect('/board/list') return HttpResponseRedirect('/board/writeform?result=fail')
def add(request): board = Board() board.title = request.POST['title'] board.content = request.POST['content'] # 그룹넘버 구하기 g_no = Board.objects.aggregate(Max('group_no')) if (g_no['group_no__max'] == None): board.group_no = 1 else: board.group_no = g_no['group_no__max'] + 1 board.order_no = 1 board.depth = 0 authuser = request.session['authuser'] auth_username = authuser.get('name') auth_user_id = authuser.get('id') board.user_name = auth_username board.user_id = auth_user_id board.save() return HttpResponseRedirect("/board/")
def add(request): if request.method == 'POST': board = Board() board.name = request.session['authuser']['name'] board.title = request.POST['title'] board.content = request.POST['content'] board_list = Board.objects.all() board.no = len(board_list) + 1 g_no = Board.objects.aggregate(Max('group_no')) if (g_no['group_no__max'] == None): board.group_no = 1 else: board.group_no = g_no['group_no__max'] + 1 board.order_no = 1 board.depth = 0 board.save() return HttpResponseRedirect("/board/list")
def reply(request): parent_no = request.POST['parent'] if request.session.get('authuser') is not None: parent = Board.objects.filter(id=parent_no)[0] post = Board() post.title = request.POST['title'] post.contents = request.POST['contents'] post.user = User.objects.get(id=request.session['authuser']['id']) Board.objects.filter(order_no__gte=parent.order_no + 1).update(order_no=F('order_no') + 1) post.group_no = parent.group_no post.order_no = parent.order_no + 1 post.depth = parent.depth + 1 post.save() return HttpResponseRedirect('/board/list') return HttpResponseRedirect(f'/board/replyform/{parent_no}?result=fail')
def write(request): if request.method == "GET": return render(request, 'board/write.html') if request.method == "POST": board = Board() board.title = request.POST['title'] board.contents = request.POST['contents'] board.hit = request.POST['hit'] board.group_no = request.POST['group_no'] board.order_no = request.POST['order_no'] board.depth = request.POST['depth'] board.no = User.objects.get(no=request.session['authuser']['no']) if board.group_no == '': maxgroupno = Board.objects.aggregate(Max('group_no')) board.group_no = maxgroupno['group_no__max'] + 1 print(board.group_no) board.save() else: board.save() return HttpResponseRedirect('/board/')