Рендеринг данных из словаря внутри json после сохранения данных в JSONField в Django
Я работаю над проектом django, в котором я использую JSONField для сохранения данных в базе данных модели. Все работает хорошо, но у меня возникают проблемы при попытке вывести данные в html-шаблон. Данные, сохраненные в базу данных, выглядят следующим образом.
{'degree': ['BSc','MSc'],
'designition': [
'content writer',
'data scientist',
'systems administrator',
],
'email': 'maunarokguy@gmail.com',
'name': 'Brian Njoroge',
'phone': '+918511593595',
'skills': [
'Python',
' C++',
'Power BI',
'Tensorflow',
'Keras',
'Pytorch',
'Scikit-Learn',
'Pandas',
'NLTK',
'OpenCv',
'Numpy',
'Matplotlib',
'Seaborn',
'Django',
'Linux',
'Docker'],
'total_exp': 3,
'university': ['gujarat university', 'wuhan university', 'egerton university']}
Я ищу способ отобразить их так, чтобы в html у меня было что-то, что отображает данные словаря внутри навыков и университета в виде списка. Вот шаблон для цикла
{% for skill in user.profile.json_data %}
{{skill}}
{% endfor %}
А вот модели
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
avatar = models.ImageField(default='default.jpg', upload_to='profile_images')
bio = models.TextField()
resume = models.FileField('Upload Resumes', upload_to='resumes/', null=True, blank=True,default='resume.docx')
json_data = models.JSONField(null=True, blank=True)
Вот мнения
@login_required
def myprofile(request, user_id):
profile = Profile.objects.get(id=user_id)
context = {'profile':profile}
return render(request, 'user/profile.html', context)
Вам следует рассмотреть возможность использования JSONField в моделях
skills = models.JSONField('Skills', max_length=1000, null=True, blank=True)
и затем в вашем шаблоне
{% for skill in user.profile.skills %}
{{skill}}
{% endfor %}