Migrate to 14.0
parent
55baeeb781
commit
c9006fb254
|
@ -10,6 +10,7 @@ import uuid
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
|
|
||||||
from psycopg2 import ProgrammingError
|
from psycopg2 import ProgrammingError
|
||||||
|
from psycopg2.sql import SQL
|
||||||
|
|
||||||
from odoo import _, api, fields, models
|
from odoo import _, api, fields, models
|
||||||
from odoo.exceptions import UserError
|
from odoo.exceptions import UserError
|
||||||
|
@ -159,22 +160,21 @@ class SQLRequestMixin(models.AbstractModel):
|
||||||
if mode in ("view", "materialized_view"):
|
if mode in ("view", "materialized_view"):
|
||||||
rollback = False
|
rollback = False
|
||||||
|
|
||||||
# pylint: disable=sql-injection
|
query = self.env.cr.mogrify(self.query, params).decode("utf-8")
|
||||||
if params:
|
|
||||||
query = self.query % params
|
|
||||||
else:
|
|
||||||
query = self.query
|
|
||||||
query = query
|
|
||||||
|
|
||||||
if mode in ("fetchone", "fetchall"):
|
if mode in ("fetchone", "fetchall"):
|
||||||
pass
|
pass
|
||||||
elif mode == "stdout":
|
elif mode == "stdout":
|
||||||
query = "COPY ({}) TO STDOUT WITH {}".format(query, copy_options)
|
query = SQL("COPY ({0}) TO STDOUT WITH {1}").format(
|
||||||
|
SQL(query), SQL(copy_options)
|
||||||
|
)
|
||||||
elif mode in "view":
|
elif mode in "view":
|
||||||
query = "CREATE VIEW {} AS ({});".format(query, view_name)
|
query = SQL("CREATE VIEW {0} AS ({1});").format(SQL(query), SQL(view_name))
|
||||||
elif mode in "materialized_view":
|
elif mode in "materialized_view":
|
||||||
self._check_materialized_view_available()
|
self._check_materialized_view_available()
|
||||||
query = "CREATE MATERIALIZED VIEW {} AS ({});".format(query, view_name)
|
query = SQL("CREATE MATERIALIZED VIEW {0} AS ({1});").format(
|
||||||
|
SQL(query), SQL(view_name)
|
||||||
|
)
|
||||||
else:
|
else:
|
||||||
raise UserError(_("Unimplemented mode : '%s'" % mode))
|
raise UserError(_("Unimplemented mode : '%s'" % mode))
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue