Привет! Я использую Nest Js с TypeOrm и в настоящее время подключен к MongoDB (но я хочу быть независимым, потому что большинство клиентов используют базы данных MS SQL и Postgres).
В основном я хотите сохранить пару ключ / значение в базе данных. Оба типа String
. Это сопоставляемая сущность, содержащая пару
@Entity()
export class Mapping extends BaseEntity {
@PrimaryColumn()
key: string;
@Column()
value: string;
}
В настоящее время хранилище пусто
@EntityRepository(Mapping)
export class MappingsRepository extends Repository<Mapping> {}
В моем служебном файле я пытаюсь найти значение по его ключу
public async getValueByKey(key: string): Promise<string> {
const mapping: Mapping = await this.mappingsRepository.findOne(key);
if (!mapping) {
throw new NotFoundException(`Key ${key} does not exist`);
}
return mapping.value;
}
К сожалению, функция findOne
всегда выдает эту ошибку при передаче ключа
Передаваемый аргумент должен быть единственной строкой из 12 байтов или строкой из 24 шестнадцатеричных символов
Как я могу это исправить, чтобы я мог передать любые ключи типа String
? Параметр key
определен, я пробовал его с фиктивными значениями, такими как f
или ffsdagsdgfdg