【发布时间】:2020-10-24 15:48:57
【问题描述】:
在这里,我正在尝试获取 user_to_toggle id,但没有出现,我想这是因为我做错了什么。我很困惑如何获得 user_to_toggle id。我正在获取他的用户名,但我也想要用户 ID。这是我的代码。
视图,pyy
class UserProfileFollowToggle(LoginRequiredMixin,View):
login_url = '/accounts/login/'
def post(self, request, *args, **kwargs):
user_pk_to_toggle=kwargs.get('pk') #this is returning None.
username_to_toggle = request.POST.get("username")#this is returning me username of toggle user.
profile_, is_following = UserProfile.objects.toggle_follow(request.user, request.user.id ,username_to_toggle)
return redirect(f'/profiles/{username_to_toggle}')
follow_to_toggle.html
<form class='form' method='POST' action="{% url 'profiles:toggle'%}">
{% csrf_token %}
<input type='hidden' name='username' value="{% if username %}{{ username }}{% else %}hello{% endif %}">
<button class='btn {% if is_following %}btn-warning{% else %}btn-primary{% endif %}'>{% if is_following %}Unfollow {% else %}Follow{% endif %}</button>
</form>
如果需要比告诉我更多的代码,我将使用该信息更新我的问题。
urls.py
app_name = 'profiles'
urlpatterns = [
path('user-profile/',UserProfileFollowToggle.as_view(),name = 'toggle'),
path('<str:username>/',UserProfileDetailView.as_view(),name = 'detail'),
]
【问题讨论】:
-
添加与该视图相关的url文件。
-
我已经添加了它们。你现在可以看到了。
标签: python django django-models django-views django-templates