2014-09-26 1 views
2

Я хочу отобразить первый символ пользователя в шаблонах django. Я хочу, чтобы сделать изображение пользователя первого символа, как подпись или аватарХотите отобразить первый символ слова в шаблонах django

как этого https://meta.discourse.org/t/switch-from-gravatar-to-html-css-letters-for-no-avatar-users/15336

<p>{{postone.user}}</p> 

так я получу результат как любое имя «Gaurav» или «Амит», но я просто хочу первую букву из них как «G» или «A» Так что я могу отобразить его как изображение первой буквы.

ответ

7

Решение с использованием шаблонов тегов (но для меня ответ из @Kasra более предпочтительно):

Первая буква:

{{ postone.user|make_list|first }} 

Слово без первых:

{{ postone.user|make_list|slice:'1:'|join:'' }} 
+0

Это сработало ,,,,,,,, Спасибо ,,,,,, – Gaurav

+0

Проблема в том, что после объединения вы больше не можете использовать фильтр "richtext". Как я могу выбрать первую букву и по-прежнему применять richtext. – sqwale

1

Если postone.user был индексируемая вы можете использовать [0] индекс:

<p>{{postone.user[0]}}</p> 
+0

Это не работает ,,,,,, – Gaurav

+0

так Что тип 'data.user'? – Kasramvd

+0

Я проверил его для {{data.user.username [0]}} все еще не работает – Gaurav

2

<p>{{ postone.user.first_name.0 }}</p> попробовать

Смежные вопросы