How to delete a Collection in LokiJS
I been working on LokiJS on Node recently, And I could'nt find a command that deletes the entire Collection itself,
I tried with these commands with an assumption it would exist, I could not find any docs/ samples to delete a collection.
// let result = this.db.dropCollection(collectionName);
// let result = this.db.removeCollection(collectionName);
// let result = this.db.deleteCollection(collectionName);
Other way around I know I can achieve the same by reading the file and removing the entire object, But is there a built-in LokiJS function?
javascript node.js node-modules lokijs
add a comment |
I been working on LokiJS on Node recently, And I could'nt find a command that deletes the entire Collection itself,
I tried with these commands with an assumption it would exist, I could not find any docs/ samples to delete a collection.
// let result = this.db.dropCollection(collectionName);
// let result = this.db.removeCollection(collectionName);
// let result = this.db.deleteCollection(collectionName);
Other way around I know I can achieve the same by reading the file and removing the entire object, But is there a built-in LokiJS function?
javascript node.js node-modules lokijs
add a comment |
I been working on LokiJS on Node recently, And I could'nt find a command that deletes the entire Collection itself,
I tried with these commands with an assumption it would exist, I could not find any docs/ samples to delete a collection.
// let result = this.db.dropCollection(collectionName);
// let result = this.db.removeCollection(collectionName);
// let result = this.db.deleteCollection(collectionName);
Other way around I know I can achieve the same by reading the file and removing the entire object, But is there a built-in LokiJS function?
javascript node.js node-modules lokijs
I been working on LokiJS on Node recently, And I could'nt find a command that deletes the entire Collection itself,
I tried with these commands with an assumption it would exist, I could not find any docs/ samples to delete a collection.
// let result = this.db.dropCollection(collectionName);
// let result = this.db.removeCollection(collectionName);
// let result = this.db.deleteCollection(collectionName);
Other way around I know I can achieve the same by reading the file and removing the entire object, But is there a built-in LokiJS function?
javascript node.js node-modules lokijs
javascript node.js node-modules lokijs
edited Nov 23 '18 at 12:57
Teemu
18.5k63773
18.5k63773
asked Nov 23 '18 at 12:06
Mahesh KumaranMahesh Kumaran
616
616
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
To delete a collection you need to use the removeCollection()
method on the main Loki object. See docs here.
For example, if you have your Loki instance initialized like this:
const loki = require('lokijs');
const lokidb = new loki();
// Add a collection (that we will remove later)
let myCollection = lokidb.addCollection('myCollection');
Now lokidb
is your main loki object, and this is the object that you need to execute the removeCollection()
from.
// Let's remove the collection
lokidb.removeCollection('myCollection');
// * poof * ....
// myCollection is now gone
// To make sure that this deleting change is persisted (if necessary)
lokidb.saveDatabase();
I don't know exactly how you have your loki db set up, but hopefully this example helps.
1
I tried the same , but din't work, am i missing anything else ?
– Mahesh Kumaran
Jan 9 at 12:01
Can you share a full example of your code, on a code pen, or a gist?
– Adam D
Jan 10 at 10:23
1
Hey , i just found what the issue was ,lokidb.saveDatabase();
actually reflects the changes, infact i kept the autosave interval very less , still dint work -lokidb.saveDatabase();
did the trick !! Thanks for the help !!
– Mahesh Kumaran
Jan 21 at 9:39
@MaheshKumaran Glad you figured that out. I added your step in case any others have issues with persistence and autoSave like you did. If you want, check the answer as solved to help others. :-)
– Adam D
Jan 21 at 12:35
Even withdb.card.findAndRemove({guid}); await new Promise((resolve, reject) => { db.loki.saveDatabase((err) => err ? reject(err) : resolve()); }); console.log(db.card.find({guid}));
still doesn't work.
– Polv
Mar 28 at 18:50
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53446432%2fhow-to-delete-a-collection-in-lokijs%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
To delete a collection you need to use the removeCollection()
method on the main Loki object. See docs here.
For example, if you have your Loki instance initialized like this:
const loki = require('lokijs');
const lokidb = new loki();
// Add a collection (that we will remove later)
let myCollection = lokidb.addCollection('myCollection');
Now lokidb
is your main loki object, and this is the object that you need to execute the removeCollection()
from.
// Let's remove the collection
lokidb.removeCollection('myCollection');
// * poof * ....
// myCollection is now gone
// To make sure that this deleting change is persisted (if necessary)
lokidb.saveDatabase();
I don't know exactly how you have your loki db set up, but hopefully this example helps.
1
I tried the same , but din't work, am i missing anything else ?
– Mahesh Kumaran
Jan 9 at 12:01
Can you share a full example of your code, on a code pen, or a gist?
– Adam D
Jan 10 at 10:23
1
Hey , i just found what the issue was ,lokidb.saveDatabase();
actually reflects the changes, infact i kept the autosave interval very less , still dint work -lokidb.saveDatabase();
did the trick !! Thanks for the help !!
– Mahesh Kumaran
Jan 21 at 9:39
@MaheshKumaran Glad you figured that out. I added your step in case any others have issues with persistence and autoSave like you did. If you want, check the answer as solved to help others. :-)
– Adam D
Jan 21 at 12:35
Even withdb.card.findAndRemove({guid}); await new Promise((resolve, reject) => { db.loki.saveDatabase((err) => err ? reject(err) : resolve()); }); console.log(db.card.find({guid}));
still doesn't work.
– Polv
Mar 28 at 18:50
add a comment |
To delete a collection you need to use the removeCollection()
method on the main Loki object. See docs here.
For example, if you have your Loki instance initialized like this:
const loki = require('lokijs');
const lokidb = new loki();
// Add a collection (that we will remove later)
let myCollection = lokidb.addCollection('myCollection');
Now lokidb
is your main loki object, and this is the object that you need to execute the removeCollection()
from.
// Let's remove the collection
lokidb.removeCollection('myCollection');
// * poof * ....
// myCollection is now gone
// To make sure that this deleting change is persisted (if necessary)
lokidb.saveDatabase();
I don't know exactly how you have your loki db set up, but hopefully this example helps.
1
I tried the same , but din't work, am i missing anything else ?
– Mahesh Kumaran
Jan 9 at 12:01
Can you share a full example of your code, on a code pen, or a gist?
– Adam D
Jan 10 at 10:23
1
Hey , i just found what the issue was ,lokidb.saveDatabase();
actually reflects the changes, infact i kept the autosave interval very less , still dint work -lokidb.saveDatabase();
did the trick !! Thanks for the help !!
– Mahesh Kumaran
Jan 21 at 9:39
@MaheshKumaran Glad you figured that out. I added your step in case any others have issues with persistence and autoSave like you did. If you want, check the answer as solved to help others. :-)
– Adam D
Jan 21 at 12:35
Even withdb.card.findAndRemove({guid}); await new Promise((resolve, reject) => { db.loki.saveDatabase((err) => err ? reject(err) : resolve()); }); console.log(db.card.find({guid}));
still doesn't work.
– Polv
Mar 28 at 18:50
add a comment |
To delete a collection you need to use the removeCollection()
method on the main Loki object. See docs here.
For example, if you have your Loki instance initialized like this:
const loki = require('lokijs');
const lokidb = new loki();
// Add a collection (that we will remove later)
let myCollection = lokidb.addCollection('myCollection');
Now lokidb
is your main loki object, and this is the object that you need to execute the removeCollection()
from.
// Let's remove the collection
lokidb.removeCollection('myCollection');
// * poof * ....
// myCollection is now gone
// To make sure that this deleting change is persisted (if necessary)
lokidb.saveDatabase();
I don't know exactly how you have your loki db set up, but hopefully this example helps.
To delete a collection you need to use the removeCollection()
method on the main Loki object. See docs here.
For example, if you have your Loki instance initialized like this:
const loki = require('lokijs');
const lokidb = new loki();
// Add a collection (that we will remove later)
let myCollection = lokidb.addCollection('myCollection');
Now lokidb
is your main loki object, and this is the object that you need to execute the removeCollection()
from.
// Let's remove the collection
lokidb.removeCollection('myCollection');
// * poof * ....
// myCollection is now gone
// To make sure that this deleting change is persisted (if necessary)
lokidb.saveDatabase();
I don't know exactly how you have your loki db set up, but hopefully this example helps.
edited Jan 21 at 12:33
answered Jan 1 at 18:08
Adam DAdam D
423215
423215
1
I tried the same , but din't work, am i missing anything else ?
– Mahesh Kumaran
Jan 9 at 12:01
Can you share a full example of your code, on a code pen, or a gist?
– Adam D
Jan 10 at 10:23
1
Hey , i just found what the issue was ,lokidb.saveDatabase();
actually reflects the changes, infact i kept the autosave interval very less , still dint work -lokidb.saveDatabase();
did the trick !! Thanks for the help !!
– Mahesh Kumaran
Jan 21 at 9:39
@MaheshKumaran Glad you figured that out. I added your step in case any others have issues with persistence and autoSave like you did. If you want, check the answer as solved to help others. :-)
– Adam D
Jan 21 at 12:35
Even withdb.card.findAndRemove({guid}); await new Promise((resolve, reject) => { db.loki.saveDatabase((err) => err ? reject(err) : resolve()); }); console.log(db.card.find({guid}));
still doesn't work.
– Polv
Mar 28 at 18:50
add a comment |
1
I tried the same , but din't work, am i missing anything else ?
– Mahesh Kumaran
Jan 9 at 12:01
Can you share a full example of your code, on a code pen, or a gist?
– Adam D
Jan 10 at 10:23
1
Hey , i just found what the issue was ,lokidb.saveDatabase();
actually reflects the changes, infact i kept the autosave interval very less , still dint work -lokidb.saveDatabase();
did the trick !! Thanks for the help !!
– Mahesh Kumaran
Jan 21 at 9:39
@MaheshKumaran Glad you figured that out. I added your step in case any others have issues with persistence and autoSave like you did. If you want, check the answer as solved to help others. :-)
– Adam D
Jan 21 at 12:35
Even withdb.card.findAndRemove({guid}); await new Promise((resolve, reject) => { db.loki.saveDatabase((err) => err ? reject(err) : resolve()); }); console.log(db.card.find({guid}));
still doesn't work.
– Polv
Mar 28 at 18:50
1
1
I tried the same , but din't work, am i missing anything else ?
– Mahesh Kumaran
Jan 9 at 12:01
I tried the same , but din't work, am i missing anything else ?
– Mahesh Kumaran
Jan 9 at 12:01
Can you share a full example of your code, on a code pen, or a gist?
– Adam D
Jan 10 at 10:23
Can you share a full example of your code, on a code pen, or a gist?
– Adam D
Jan 10 at 10:23
1
1
Hey , i just found what the issue was ,
lokidb.saveDatabase();
actually reflects the changes, infact i kept the autosave interval very less , still dint work - lokidb.saveDatabase();
did the trick !! Thanks for the help !!– Mahesh Kumaran
Jan 21 at 9:39
Hey , i just found what the issue was ,
lokidb.saveDatabase();
actually reflects the changes, infact i kept the autosave interval very less , still dint work - lokidb.saveDatabase();
did the trick !! Thanks for the help !!– Mahesh Kumaran
Jan 21 at 9:39
@MaheshKumaran Glad you figured that out. I added your step in case any others have issues with persistence and autoSave like you did. If you want, check the answer as solved to help others. :-)
– Adam D
Jan 21 at 12:35
@MaheshKumaran Glad you figured that out. I added your step in case any others have issues with persistence and autoSave like you did. If you want, check the answer as solved to help others. :-)
– Adam D
Jan 21 at 12:35
Even with
db.card.findAndRemove({guid}); await new Promise((resolve, reject) => { db.loki.saveDatabase((err) => err ? reject(err) : resolve()); }); console.log(db.card.find({guid}));
still doesn't work.– Polv
Mar 28 at 18:50
Even with
db.card.findAndRemove({guid}); await new Promise((resolve, reject) => { db.loki.saveDatabase((err) => err ? reject(err) : resolve()); }); console.log(db.card.find({guid}));
still doesn't work.– Polv
Mar 28 at 18:50
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53446432%2fhow-to-delete-a-collection-in-lokijs%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown