Beispiel #1
0
def review_page(request, id):

    # Объявление начальных значений переменных
    similar_block = ""
    similar_tags_block = ""
    user = None

    try:

        # Получение текущего пользователя
        user = CustomUser.get_user(request)

        this_object = Review.objects.get(id=id)

        # Получаем список приложений данного отзыва
        review_img = this_object.get_addition()

        software = Software()
        photo_dict = {}

        if this_object.software is not None:

            software = Software.objects.get(id=this_object.software.id)

            if software:

                soft_photo = software.get_main_photo()

                if soft_photo is not None:
                    for s in soft_photo:
                        photo_dict[software.id] = s

                # Второстепенные объекты - похожие ПО
                similar_block = software_views.render_similars(
                    software, id_widget="same_software")
                similar_tags_block = software_views.render_similars_tags(
                    software)

    # except:
    #     raise Http404("Отзыв не найден")

    except Exception as error:
        pass
        dbl.log("Ошибка работы с отзывом" + str(error))

    rating = [1, 2, 3, 4, 5]
    return render(
        request, 'review/review.html', {
            'review': this_object,
            'rating': rating,
            'review_img': review_img,
            'software': software,
            'photo_dict': photo_dict,
            'similar_block': similar_block,
            'similar_tags_block': similar_tags_block,
            'user': user
        })