pythondjangopostgresqlfull-text-search

Unknown command: 'update_search_field' with pgfulltext


Following the instructions on https://github.com/linuxlewis/djorm-ext-pgfulltext I added a search_index to one of my existing PostgreSQL models, as follows:

search_index = VectorField()

objects = SearchManager(
    fields = ('materials','origin','style'),
    config = 'pg_catalog.english',
    search_field = 'search_index',
    auto_update_search_field = True
)

Using my virtual-env and having pgfulltext installed, with this version djorm-ext-pgfulltext==0.9.3 according to pip freeze, I cd to the directory where manage.pyis located. And tried to run:

./manage.py update_search_field app_name

Which resulted in the following error:

Unknown command: 'update_search_field' Type 'manage.py help' for usage.

Am I missing something on how this command is used? Should I add the index directly to my db instance with psql? And if so, how could I achieve this? Any help will be much appreciated.


Solution

  • "Unknown command"

    ...this usually means you forgot to add the app to your INSTALLED_APPS in settings.py

    That's not surprising since it seems they forgot to mention that on the readme for the app, but you need something like:

    INSTALLED_APPS = (
        # ... (your existing apps)
        'djorm_pgfulltext',
    )
    

    Django needs to be told about the app in this way so that it knows to look for the management/commands directory in the app.