mirror of
https://github.com/OCA/knowledge.git
synced 2025-07-20 19:19:27 -06:00
[ADD] allow synchronous reindexation during init
This commit is contained in:
parent
dafc1d6639
commit
e4d11a8c1e
@ -10,10 +10,7 @@ To reindex a single document, open its form and click the `Reindex document` but
|
|||||||
|
|
||||||
To reindex all documents, go to Settings / Configuration / Knowledge, check the box `Reindex all documents` or `Reindex all unindexed documents` and click apply. Those are done in the background, so watch your logs for the process to finish.
|
To reindex all documents, go to Settings / Configuration / Knowledge, check the box `Reindex all documents` or `Reindex all unindexed documents` and click apply. Those are done in the background, so watch your logs for the process to finish.
|
||||||
|
|
||||||
Known issues / Roadmap
|
In a migration context, you might want to reindex all or unindexed documents. To achieve this, create a config parameter `document_reindex.reindex_unindexed_on_init` or `document_reindex.reindex_all_on_init` to have the reindexation run synchronously during installation of this module.
|
||||||
======================
|
|
||||||
|
|
||||||
* Currently, this module is not fit for huge amounts of documents
|
|
||||||
|
|
||||||
Credits
|
Credits
|
||||||
=======
|
=======
|
||||||
|
@ -19,3 +19,4 @@
|
|||||||
#
|
#
|
||||||
##############################################################################
|
##############################################################################
|
||||||
from . import models
|
from . import models
|
||||||
|
from .hooks import post_init_hook
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
"views/knowledge_config_settings.xml",
|
"views/knowledge_config_settings.xml",
|
||||||
"views/ir_attachment.xml",
|
"views/ir_attachment.xml",
|
||||||
],
|
],
|
||||||
|
"post_init_hook": 'post_init_hook',
|
||||||
"auto_install": False,
|
"auto_install": False,
|
||||||
"installable": True,
|
"installable": True,
|
||||||
"application": False,
|
"application": False,
|
||||||
|
35
document_reindex/hooks.py
Normal file
35
document_reindex/hooks.py
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
##############################################################################
|
||||||
|
#
|
||||||
|
# OpenERP, Open Source Management Solution
|
||||||
|
# This module copyright (C) 2015 Therp BV <http://therp.nl>.
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as
|
||||||
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
##############################################################################
|
||||||
|
from openerp import SUPERUSER_ID, api
|
||||||
|
|
||||||
|
|
||||||
|
def post_init_hook(cr, pool):
|
||||||
|
env = api.Environment(cr, SUPERUSER_ID, {})
|
||||||
|
with env.manage():
|
||||||
|
func = None
|
||||||
|
if env['ir.config_parameter'].get_param(
|
||||||
|
'document_reindex.reindex_all_on_init'):
|
||||||
|
func = 'document_reindex_all'
|
||||||
|
if env['ir.config_parameter'].get_param(
|
||||||
|
'document_reindex.reindex_unindexed_on_init'):
|
||||||
|
func = 'document_reindex_unindexed'
|
||||||
|
if func:
|
||||||
|
getattr(env['ir.attachment'], func)()
|
Loading…
Reference in New Issue
Block a user