Lütfen benimle birlikte olunuz. Ben sadece django-rest-framework'u öğreniyorum. Ve gerçekten onu ele geçiremiyorum.Şablonlarda django-rest-framework ile çalışma şekli
modeli:
class Day(models.Model):
date = models.DateField(default=date.today)
class ToDo(models.Model):
date = models.ForeignKey(Day)
name = models.CharField(max_length=100)
very_important = models.BooleanField(default=False)
finished = models.BooleanField(default=False)
Normal görünüm: Bir serializers.py dosyası düzenlendi
def home(request):
days = Day.objects.all()
return render(request, 'test.html', {
'days':days
})
: Kayboldum Bundan sonra
class DaySerializer(serializers.ModelSerializer):
class Meta:
model = Day
field = ('id', 'date')
class ToDoSerializer(serializers.ModelSerializer):
date = DaySerializer()
class Meta:
model = ToDo
field = ('id', 'date', 'name', 'very_important', 'finished')
. url('^api/$')
'a gittiğimi farz edelim, Day'in json nesnelerini ve ilgili nesnesini nasıl alabilirim?
Temelde bu ben görüntülenmesini istediğiniz nasıl: Şimdi şablonda yukarıda gibi görünmek için django-dinlenme-çerçeve ile nasıl çalışabileceğini
.
güncelleme
ben böyle bir şey yapmak istiyorum:
bir url giderek json nesneleri alın (örn: /api/.json)
[ { "id": 1, "date": "2015-06-23", "day_todo_set": [ { "id":5 "name": "Bloom", "very_important": True, "finished": False }, { "id":4 "name": "REST", "very_important": True, "finished": True } ] }, { "id": 2, "date": "2015-06-22", "day_todo_set": [ { "id":3 "name": "Alarm 1", "very_important": True, "finished": True }, { "id":2 "name": "Meet up with SIS", "very_important": True, "finished": False }, { "id":1 "name": "Buy Milk", "very_important": True, "finished": False } ] } ]
Nesneleri yönetme
js:
$(function() {
var $days = $('#days')
$.ajax({
type: 'GET',
url: '/api/.json',
success: function(days) {
$.each(days, function(i, day) {
$days.append('<li>date: '+ day.date+ '</li>')
});
}
});
})
Neden APIView'i içe aktardınız? Ve evet bana günlerce nesneler veriyor, ama her gün de todo ihtiyacım var. Bunu nasıl yaparım? Teşekkür ederim. – Kakar
Lütfen düzenlenmiş kodu kontrol edin –
Evet. Beklendiği gibi! Teşekkür ederim. Sadece bir şey daha var, muhtemelen sadece 10 Day nesnesi ve 5 ToDo nesnesi, muhtemelen görüşlerde var mı? – Kakar