Support non-numeric pks in FrontendEditableAdminMixin / PlaceholderAdminMixin

Closes #3578