У меня есть приложение, в котором мне нужно хранить художников и их данные в базе данных. Теперь я хочу получить всех художников и отобразить некоторые их детали в конце. Как это сделать. Во-вторых, если я получаю рейтинг исполнителя в каком-либо поле ввода, используя ng-model, то как сохранить это значение в конкретном художнике для обновления деталей. Структура базы данных:
{
"artists": {
"Atif":{
"name":"atif",
"rating":8
},
"Himesh":{
"name":"himesh",
"rating":5
}
}
}
и это angular.js
(function()
{
var app = angular.module("myapp", ["firebase"]);
app.controller("maincontroller", function($scope, $firebaseObject,$firebaseArray)
{
var ref = new Firebase("https://gigstart.firebaseio.com/");
var artists=ref.child("artists");
// download the data into a local object
$scope.data = $firebaseObject(ref);
// putting a console.log here won't work, see below
ref.on("value", function(snapshot)
{
console.log(snapshot.val());
}, function (errorObject)
{
console.log("The read failed: " + errorObject.code);
});
var artistsRef=new Firebase("https://gigstart.firebaseio.com//artists");
}); //end of controller
Теперь я хочу показать имя и рейтинг каждого артиста в конце. Могу ли я сделать что-то вроде
<div ng-repeat="artist in artists">
{{artist.name}}
{{artist.rating}}
</div>
У вас есть список художников, которые вы хотите ng-repeat
в своем угловом представлении. Вы можете это сделать:
app.controller("maincontroller", function($scope, $firebaseArray)
{
var ref = new Firebase("https://gigstart.firebaseio.com/");
var artists = ref.child("artists");
$scope.artists = new $firebaseArray(artists);
}
Пожалуйста, найдите минутку, чтобы пройти быстрый старт AngularFire, прежде чем начинать свой собственный проект. Это описано в шаге 5.