Итак, заполнение базы данных - это процесс, в котором начальный набор данных предоставляется базе данных.
В качестве передового опыта вместо ручной вставки данных следует настроить начальные данные для автоматической вставки документов.
var seeder = require('mongoose-seed');
// Connect to MongoDB via Mongoose
seeder.connect('mongodb://localhost/yourDatabase', function() {
// Load Mongoose models
seeder.loadModels([
'models/roles.js'
]);
// Clear specified collections
seeder.clearModels(['roles'], function() {
// Callback to populate DB once collections have been cleared
seeder.populateModels(data, function() {
seeder.disconnect();
});
});
});
// Data array containing seed data - documents organized by Model
var data = [
{
'model': 'role',
'documents': [
{
'role': 'user',
'value': ['readPost', 'commentPost', 'votePost']
},{
'role': 'another role',
'value': ['updatePost', 'deletePost']
}
]
}
];
поместите этот код в файл seed.js
и запустите его.
Править: Хорошо, Вы говорите использование C++. Я редактирую свой ответ. Я использовал бы препроцессор C и затем grep для переменной. Это появится во-первых.
cpp -I...(preprocessor options here) file.cpp | grep variable
Препроцессор C присоединится ко всему включению, которое использует программа, и определение должно быть перед любым использованием той переменной в файле. Не идеальная вещь, но без IDE или полного инструмента описания/управления языка, у Вас только есть текст.
Другая опция использовала бы ctags. Это понимает C и синтаксисы C++ (среди других), и может искаться переменные и функции с помощью инструментов командной строки, emacs и vi, среди других.
Вы уже дали самый соответствующий инструмент: IDE. Это - точно вид вещи, в которой выделяется IDE. Почему Вы не хотели бы использовать IDE при нахождении разработки болезненной без одной?
Обратите внимание, что Emacs, Vim и т.д. может работать IDE - я не говорю о принуждении Вас мир графический интерфейсов пользователя, если Вы хотите остаться в ситуации только для текста, например, потому что Вы - SSHing в.
(Я действительно не пытаюсь быть грубым здесь. Я просто думаю, что Вы обесценили очевидное решение, не объясняя почему.)
Grep для общих шаблонов для объявлений переменной. Пример: *, и,> или алфавитно-цифровое, сопровождаемое одним или несколькими пробельными символами затем название переменной. Или имя переменной, сопровождаемое нулем или большим количеством пробельных символов, затем левая круглая скобка или точка с запятой. Если это не было определено при действительно странных обстоятельствах (как с некоторым макросом), это работает каждый раз.
Я использую cscope и ctags-избыточный неукоснительно. Выполните его однажды на моей кодовой базе и затем в Vim, я могу использовать различные команды как ^] или [D или [я или подобный для нахождения любых определений или объявлений для пообещанного.
Это подобно услугам, предоставленным мега-IDE как Visual Studio и Eclipse.
Cscope также функционирует как автономный инструмент, который выполняет эти поиски.
В VIM можно использовать gd
видеть локальные объявления переменных или gD
видеть объявления глобальной переменной, если они определяются в текущем файле. Ссылочный Go_to_definition_using_g
Можно также использовать [i
видеть определение, не переходя к нему, или [I
видеть все случаи переменной во всех включенных файлах также, которые естественно покажут определение также.
Я использую один из трех методов:
Если Вы работаете в Microsoft Visual Studio (который я думаю, что Вы могли использовать для C++ также, но потребуете работы над рабочей станцией Windows) существует легкодоступная опция контекстного меню для, "Переходят к Определению...", которое возьмет Вас к определению любой в настоящее время отмечаемой переменной, типа или метода.
если Вы настаиваете на том, чтобы оставаться текстовый режим, можно сделать это или с emacs или с vi с соответствующими плагинами.
Но действительно, переместитесь в 21-й век.
Править: Вы прокомментировали выполнение этого по SSH, потому что Вам нужна скорость сборки кластера удаленного сервера.
В этом случае смонтируйте диск на своей локальной машине и используйте IDE и просто SSH в начать сборку.