Persistent Data
How to store and retrieve persistent data from disk using the built-in system.
In nanos world it is possible to store and retrieve data from disk with simple functions.
It is possible to store Persistent Data in both Client and Server!
File Formatβ
The persistent data is automatically stored in the TOML format in the file PersistentData.toml inside your Package/.data/ folder (both server and client side).
This file is only created if you call Package.SetPersistentData().
Storing and Retrieving dataβ
All PersistentData files are loaded automatically when the Package loads and stored in memory. You can easily access the whole file with Package.GetPersistentData().
For storing data you will need to pass a key value, which will store any lua value in that key.
Examplesβ
local my_table = {
my_id = 123,
my_data_02 = "data"
}
Package.SetPersistentData("awesome_table", my_table)
-- PersistentData.toml will be:
-- awesome_table = { my_id = 123, my_data_02 = "data" }
You can also set an individual value in the table with the dot notation:
Package.SetPersistentData("awesome_table.my_data_02", "another data")
-- PersistentData.toml will be:
-- awesome_table = { my_id = 123, my_data_02 = "another data" }
Then retrieving the data:
local my_table = Package.GetPersistentData().awesome_table
Console.Log(my_table.my_id)
-- Will print:
-- 123