How to get Select2-style list of values stored already?

Its well documented how to set up a FK relation to use Select2 pop up of linked records as you type.

But what about getting those values from the same database?

Say, for example, I have a BOOK database. With a field NAME (char 100).

I don’t want people to ADD a new book that is similar (or identical) to a name already in the database with inconsistent spelling or wording.

Or explained another way, as they type, I want a list of matching existing names in the db already, I want them to see it and be able to click on it instead of having to type the whole thing in again - and maybe making a spelling mistake. And if there is nothing coming up, they have to enter the whole name this time.

I know I can build a custom view and form for this, and I guess that will happen eventually. In the meantime, I am wondering if anybody has added something like this to the admin interface yet?

I believe the ModelSelect2Widget in the Django-Select2 package is what you would be looking for here.

You could then create a custom form for your admin class, where that form uses this widget for that field.