Как я могу отобразить другую информацию пользователя в Django

, предполагая, что вы можете получить указатели на relavent указатели функций на системные вызовы open / read / close, вы можете сделать что-то вроде этого:

mm_segment_t fs = get_fs();
set_fs(KERNEL_DS);

fd = (*syscall_open)(file, flags, mode);
if(fd != -1) {
    (*syscall_read)(fd, buf, size);
    (*syscall_close)(fd);
}
set_fs(fs);

вам нужно будет создайте «syscall_*» указатели на функции, которые я показал. Я уверен, что есть лучший способ, но я считаю, что это сработает.

1
задан Gehad Al Sayed 18 January 2019 в 10:03
поделиться

2 ответа

Прежде всего, ваше get_username_field бесполезно.

В вашем views.py,

class UserPostListView(ListView):
    model = Profile
    template_name = 'website/user_posts.html'
    context_object_name = 'user_content'  
    allow_empty = False  #this will show 404 if the username does not exists

    def get_queryset(self):
        return User.objects.filter(username=self.kwargs['username']) 
        # you can do it in one line now 

Теперь, чтобы показать это в html,

{% for user in user_content %}
{{user.get_full_name}}
# rest of your code
{% endfor %}

Вы также можете показывать сообщения этого конкретного пользователя так же, как и выше. [ 115]

0
ответ дан Bidhan Majhi 18 January 2019 в 10:03
поделиться

user всегда является текущим вошедшим пользователем. Ваш вид использует модель профиля, поэтому вы можете получить доступ к profile или object.

{{ profile.user.get_full_name }}
{{ profile.age }}

Обратите внимание, ваш метод get_username_field никогда не вызывается и ничего не делает; Вы должны удалить его.

Заметьте также, что на самом деле не очень хорошая идея хранить age как целое число в базе данных. Это означает, что вам как-то приходится обновлять его каждый год, так как люди имеют странную привычку стареть ... Лучше хранить дату рождения и иметь метод для отображения возраста.

0
ответ дан Daniel Roseman 18 January 2019 в 10:03
поделиться