Fixing duplicate ID errors with typeorm-factory

Published under TypeScript.

When creating a factory with typeorm-factory, you have to make sure any dynamic data is handled within a closure, otherwise it'll only run once when the factory is imported.

If you define a factory like the above, the faker.lorem.word() will only run once, when the factory is imported. This means if you were expecting a random word for each instance the factory creates, you won't get it. Instead, each factory will have the exact same word.

To fix this, you must use a sequence instead of attr:

The sequence will accept a closure as the second argument, which will be invoked whenever the factory creates a new instance.


Webmentions

❤️ Likes: 0
📣 Retweets: 0
💬 Replies: 0
🙊 Mentions: 0
Enjoyed this post? Have a comment or feedback? Let me know on Twitter!