본문 바로가기
카테고리 없음

오소플 과제

by leko 2023. 11. 28.

detail.html


<p>
item name is <b>{{name}}</b>
</p>
<p>
product number is {{data.product_number}}
    </p>
<p>and product category is {{data.product_category}}
 </p>
   <p> product place is {{data.product_place}}
    </p>
   <p> product description is  {{data.product_description}}
    </p>
   <p> start date is {{data.start_date}}
    
   end date is  {{data.end_date}}
</p>

<img src="/static/img/{{data.img_path}}", width=140, height=200>

<!--이거 추가 -->
<button onclick="location.href='/reg_review_init/{{name}}/';">
    리뷰 등록
</button>
database.py 



    def reg_review(self, data, img_path):
            review_info ={
                "name": data['name'],
                "title": data['title'],
                "rate": data['rate'],
                "review": data['review'],
                "img_path": img_path
                
            }
            self.db.child("review").child(data['name']).set(review_info)
            return True
application.py


#이거 추가
@app.route("/reg_review_init/<name>/")
def reg_review_init(name):
    return render_template("review_add.html", name=name)

@app.route("/reg_review", methods=['POST'])
def reg_review():
    print(request.files)
    image_file = request.files.get("img_path")
    image_file.save("static/img/{}".format(image_file.filename))
    
    # 'reviewStar' 키가 없을 경우 기본값으로 '0' 사용
    rate = request.form.get('reviewStar', '0')

    data = {
        'name': request.form['name'],
        'title': request.form['title'],
        'rate': rate,
        'review': request.form['reviewContents'],
        "img_path": "static/img/" + image_file.filename
    }
    DB.reg_review(data, image_file.filename)
    return redirect(url_for('login'))








    p16
list.html 처럼 review.html에 전체리뷰조회화면 만들기
나는 login으로 redirect시킴
근데 view_review로 시켜야함! application.py에 만들기!
review_add.html 수정

<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="/static/css/review_add.css">
</head>
<body>
<form class="mb-3" name="myform" id="myform" method="post" action="/reg_review" enctype="multipart/form-data">
<div class="submit-section">
    <button id="button1">임시저장</button>

      <input type="submit" id="button2" value="등록하기">
</div>

<p id="title1">리뷰 작성하기</p>
<div style="display:flex; flex-direction: column;">
<div class = "tabs">
<div class = "tab">기본정보</div> 
<div class = "tab">상품정보</div> 
<div class = "tab">공지사항</div>
</div>

<div class="form-section">
    
    상품:    <input type="text" name="name" id="name" value="{{name}}"><br><br>
    리뷰 제목: <input type="text" name="title" id="title" value=""><br><br>
    

    <label for="review-content">리뷰 작성</label>
    <p>공동 구매에 대한 리뷰를 작성해주세요.<br>작성해주신 리뷰는 리뷰 조회 페이지에 노출됩니다.</p>
    <textarea class="col-auto form-control" type="text" name="reviewContents"
 placeholder="리뷰를 남겨주세요 감사합니다!"></textarea>
    
         <fieldset>
 <span class="text-bold">별점을 선택해주세요</span>
 <input type="radio" name="reviewStar" value="5" id="rate1"><label
 for="rate1">★</label>
 <input type="radio" name="reviewStar" value="4" id="rate2"><label
 for="rate2">★</label>
 <input type="radio" name="reviewStar" value="3" id="rate3"><label
 for="rate3">★</label>
 <input type="radio" name="reviewStar" value="2" id="rate4"><label
 for="rate4">★</label>
 <input type="radio" name="reviewStar" value="1" id="rate5"><label
 for="rate5">★</label>
 </fieldset>
     리뷰이미지를 업로드해주세요
    
 <input type="file" id="img_path" name="img_path" accept="image/*"><br><br>
    
</div>
</div>
<image id="backicon" src="../static/img/Group 45.png">
</body>
 </form>