Hi There!
I’ve faced this same problem. And yes 15000 records is alot to edit one by one! Currently you can’t bulk update via the Admin UI but you can do it programatically. The solution is to set the published_at field to a date for all the records you want to publish. Those records will then appear as ‘published’ in the Admin UI and API.
I’m assuming you’ve already got a good handle on SQL already since you were able to import 15000 records. If not, have a look at a database admin tool to help you bulk update the published_at field in your “books” table. DBeaver is an example of one and with it you can perform SQL operations via a GUI or you can use SQL directly.
If you want to do it within your strapi code instead, you can write a small function that runs an SQL update query once within your strapi app just before it starts. You can use knex to build your SQL query (it’s already packaged with strapi) e.g.
async function bulkPublishBooks() {
const knex = strapi.connections.default
const updated = await knex.query('books')
.update('published_at', new Date().toISOString())
.whereNull('published_at')
}
where ‘books’ is the name of the MySQL table that has all your book records. Place the above code inside bootstrap.js and restart the server.
NB: I haven’t tested the code snippet above as I wrote it from memory but the general idea is there.
Hope that helps!