Теперь я создаю веб-приложение, используя Node.js, AngularJS и MySQL или MongoDB. Однако, когда я пытался использовать AngularJS с контроллером, который включает в себя наборы данных, извлеченные из базы данных, мне интересно, где я должен написать код в...
Теперь я пишу в следующем коде (search.ejs, не включая полную часть (например, тег html
)):
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js"></script>
<script src="/javascripts/searchController.js"></script>
<div ng-app class="row" ng-controller="searchCtrl">
<input ng-model="query">
<ul class="search">
<li ng-repeat="i in list" | filter:query">
<a href="{{i.url}}">{{i.name}}</a>
</li>
</ul>
</div>
И я хочу получить данные из list
из базы данных и использовать его. Итак, здесь searchController.js
файл:
function searchCtrl($scope){
$scope.list = [
{
'name': 'Michael',
'url': 'mic'
},
{
'name': 'Bob',
'url': 'bob'
}
]
}
Однако то, что я хочу сделать, это вместо того, чтобы вручную записывать данные в переменной $scope.list
, использовать данные в базе данных MySQL или MongoDB. (И MySQL - мой предпочтительный язык, но MongoDB кажется лучшим в этом случае, я думаю.) Итак, как я могу подключиться к БД?
У меня также есть один файл с именем search.js
, который является следующим:
exports.index = function(req, res) {
res.render("search", {
}, function(err, res){
res.render("index", {
content: res
});
});
}
И, наконец, я также хочу услышать от вас, следует ли сначала сохранять данные из базы данных в любой файл и использовать ее, открывая и закрывая файл, или я должен напрямую подключаться к базе данных всякий раз, когда запрос приходит для извлечения данных, в условия работы и проблемы безопасности (данные в базе данных будут обновляться каждый день, поэтому я должен запустить script, чтобы автоматически воссоздать обслуживаемый файл).
Спасибо.