Replies: 6 comments
-
What connector are you using? It's difficult to answer your question without an application we could use to reproduce the problem ourselves. Please create a small app per our bug reporting instructions. |
Beta Was this translation helpful? Give feedback.
-
I've created a little app (with postgres-connector in todo-example) for you to understand my problem: Steps to reproduce:
I hope this helps you to understand what i am talking about. |
Beta Was this translation helpful? Give feedback.
-
I am afraid I am not able to run your application because I automigration does not work and thus I don't have any way how to create necessary database schemas :( However, I see a problem in your test: const index = repository.getModelIndex();
console.log(index);
expect(index).to.be.type('object[]', 'Should be type array of objects.');
In JavaScript, Arrays are considered as objects. expect(index).to.be.type('object'); You can use expect(index).to.be.instanceof(Array); Another problematic part I noticed: your application is loading & binding
The solution I recommended in the past is to move generic repository classes to a different location where With that change in place, I managed to automigrate the database and run the test suite. AFAICT, this is the value returned by {
todo_bku: { keys: { title: 1, desc: 1 }, options: { unique: true } }
} The value look reasonable to me it's a key-value map where the key is the index name and the value is an object describing (defining) the index. What makes you expect an array value instead? |
Beta Was this translation helpful? Give feedback.
-
I was relatively recently looking into foreign keys and (unique) indexes in #2712, I described the currently available syntax in this document. For the future, I proposed a slightly improved syntax, see #2766. |
Beta Was this translation helpful? Give feedback.
-
I see an object, not an array. |
Beta Was this translation helpful? Give feedback.
-
I believe the above must be documented somewhere in repositories docs. I was struggling with migration for the past 3 days and finally stumbled upon this message. Priceless! Thank you so much @bajtos |
Beta Was this translation helpful? Give feedback.
-
I've written an integration test for a function from a repository. I want to check if the model is created correctly but when i am calling "npm test" i am getting an error.
In the function i am accessing the index definition with "repository.modelClass.definition.settings.indexes.preisliste_bku".
When i start the app and debug to this point, the value of the index is an array of objects so that i can use the forEach loop.
The index definition in the "Preisliste"-model:
The array of objects:
But when i am calling the function from the test i am getting the error because "bku.keys" is not an array of objects but an object so the forEach loop does not work.
The format of bku.keys in the test:
I do not understand why the format is diffrent when i start the app and when i am running the test.
Hope the information are sufficient. Thank you guys for any response.
Beta Was this translation helpful? Give feedback.
All reactions