Can't exclude association's fields from select statement in sequelize Can't exclude association's fields from select statement in sequelize sqlite sqlite

Can't exclude association's fields from select statement in sequelize


I'm going to answer myself as it might be useful to someone in future. So according to #3664, #2974 and #2975 the answer is the following (thanks to mickhansen):

include: [{  model: dbcontext.item,  as: 'items',  attributes: ['spn'],  through: {    attributes: []  }        }]

And soon it will be documented.


I realize this thread is a bit outdated, but since this is high in the Google search results and I struggled to find the answer myself, I thought I'd add this here.

If you're using Model.getAssociatedModel() or Model.$get() (for sequelize-typescript), the current answers listed will not work for this use case. In order to hide the model associations you need to add joinTableAttributes: []

Example:

Model.getAssociatedModel({  joinTableAttributes: []})

Example:

Model.$get('property', <any>{  joinTableAttributes: []});

At the time of this post, joinTableAttributes is not included in the sequelize-typescript types hence the <any>