Как я могу удалить изображения пользователя / аватара в профиле пользователя - PullRequest
0 голосов
/ 08 февраля 2020

если есть кто-нибудь, кто знает, как я могу удалить пользователя изображения, я сделал код, чтобы сделать это, но я не могу продолжать, я застрял. так что если кто-нибудь может сказать мне, каким образом я могу сделать это этим методом? Кроме того, мне нужно знать о выходных данных (userprofile) в (delete_avatar), если этот код верен, как я могу узнать это? Я пытался использовать print и repr, но я не нашел это полезным. так, кто-нибудь может мне помочь?

views.py

# Update Avatar
@login_required
def add_avatar(request, user_id):
    my_logo = request.user.userprofile
    form = AddAvatar(instance=my_logo)
    get_userid = UserProfile.objects.filter(user_id=user_id)
    context = {'form': form, 'get_userid': get_userid}

    if request.method == 'POST':
        form = AddAvatar(request.POST, request.FILES, instance=my_logo)
        if form.is_valid():
            form.save()
            return redirect('account:view_profile')

    return render(request, 'account/change-image.html', context)


# Remove Avatar
@login_required
def delete_avatar(request, user_id):
    my_request = request.POST.get('rm-img')
    userprofile = UserProfile(my_request)

    pdb.set_trace()
    if request.method == "POST":
        del_img = UserProfile.objects.get(user_id=user_id).logo.delete() # delete object
        return redirect('account:view_profile')
    return render(request, 'account/change-image.html')

change-image. html

{% extends 'base.html' %}
{% block title %} Add New Image {% endblock %}

{% block body %}
<!-- Add new image for user-profile -->
<div class="change-image">
    <div class="add-image">
        <div class="container">
            <h1>This Image Is Current, <br>Choose Your Image From Your Personal Computer Or Delete</h1>
            <form method="post" enctype="multipart/form-data">
                {% csrf_token %}
                <label>{{ user.first_name }} {{ user.last_name }}</label>
                {{ form.as_p }}
                <button type="submit" class="btn btn-success">Change Now</button>
                <input type="submit" name="rm-img" class="btn btn-danger" value="Remove Image">
            </form>
        </div>
    </div>
</div>
{% endblock %}

файл html выше, где я Можно создать форму для обновления и удаления изображения пользователя

urls.py

urlpatterns = [
    path('new-image/<int:user_id>/', views.add_avatar, name="add_avatar"),
    path('del-image/', views.delete_avatar, name="delete_avatar"),
]

forms.py

class AddAvatar(forms.ModelForm):

    class Meta:
        model = UserProfile
        fields = ['logo']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...