Exemple #1
0
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")
Exemple #2
0
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))
Exemple #3
0
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")
Exemple #4
0
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')
Exemple #5
0
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/")
Exemple #6
0
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")
Exemple #7
0
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/')