Вы можете просто сделать fileUrl
изменяемым, и когда пользователь выйдет из системы, затем снова войдите в систему, вы можете обновить fileUrl
новым значением.
static var fileUrl = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true).appendingPathComponent(SQLiteManager.databaseName())
func login(){
//Do all login related tasks
...
// After the user is logged in and SQLiteManager.databaseName() is updated
SQLite.fileUrl = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true).appendingPathComponent(SQLiteManager.databaseName())
}
Вы также можете сделать fileUrl
aвычисляемое свойство, но если вам действительно нужно обновить его только после того, как пользователь вышел из системы, а затем снова вошел и использовал fileUrl
гораздо чаще, чем переключение пользователя, было бы излишним пересчитывать fileUrl
каждый раз, когда вы получаете к нему доступ.
Другой возможностью было бы пересчитать fileUrl
из SQLiteManager.databaseName()
, предполагая, что функция - это пользовательская функция, которую вы можете изменять, а не метод из сторонней библиотеки.