[Django Project][community 만들기 - 게시판 만들기(2)]

[Django Project][community 만들기 - 게시판 만들기(2)]

728x90

반응형

글쓰기 만들기

저번에 만든 게시판 기능에 글쓰기 기능을 추가해 보겠다.

일단 글쓰기에 사용될 html코드를 부트스트랩의 기본 예제로 간단하게 만들어 보았다.

.nav_1{ background: rgba(0,0,0,0.1); border-bottom: 1px solid gray; height: 50px; text-align: right; } .form{ margin:30px; } 홈 비트코인 주식 게시판 회원가입 로그인 {% csrf_token %} {{error}} 제목 내용 글쓰기

그리고 view을 작성해 주었다.

def bored_write(request): if request.method == 'GET': return render(request,'bored_write.html') else: user_id = request.session.get('user') if user_id == None: return HttpResponse('로그인 후 이용가능합니다.') else: writer = user.objects.get(pk=user_id) title = request.POST.get('title',None) contents = request.POST.get('contents',None) res_data = {} if not(title and contents): res_data['error'] = '모든 값을 입력해야됩니다.' return render(request,'bored_write.html',res_data) else: write = Bored( title = title, contents = contents, writer = writer ) write.save() return redirect('/bored/list')

회원가입의 코드와 크게 다르지 않아서 새롭게 추가한 내용만 설명해보겠다.

user_id = request.session.get('user')

일단 세션에서 로그인 여부를 가져와서 만약 값이 None이면 로그인후 이용가능하다는 문구가 나오도록 해주었다.

writer = user.objects.get(pk=user_id)

그리고 user의 데이터베이트에서 user_id의 데이터베이스을 가져와서 글쓴이를 알 수 있었다.

다음으로 저장을 해주고 다시 bored 페이지로 넘어 갈 수 있도록 redirect를 해주었다.

글이 잘 작성되는것을 볼 수 있다. 다음 글에는 이 커뮤니티에 다양한 기능을 추가해보겠다.

반응형

from http://kpumangyou.tistory.com/107 by ccl(A) rewrite - 2021-12-23 10:01:11