(
self,
expression,
query,
*,
config=None,
start_sel=None,
stop_sel=None,
max_words=None,
min_words=None,
short_word=None,
highlight_all=None,
max_fragments=None,
fragment_delimiter=None,
)
| 321 | output_field = TextField() |
| 322 | |
| 323 | def __init__( |
| 324 | self, |
| 325 | expression, |
| 326 | query, |
| 327 | *, |
| 328 | config=None, |
| 329 | start_sel=None, |
| 330 | stop_sel=None, |
| 331 | max_words=None, |
| 332 | min_words=None, |
| 333 | short_word=None, |
| 334 | highlight_all=None, |
| 335 | max_fragments=None, |
| 336 | fragment_delimiter=None, |
| 337 | ): |
| 338 | if not hasattr(query, "resolve_expression"): |
| 339 | query = SearchQuery(query) |
| 340 | options = { |
| 341 | "StartSel": start_sel, |
| 342 | "StopSel": stop_sel, |
| 343 | "MaxWords": max_words, |
| 344 | "MinWords": min_words, |
| 345 | "ShortWord": short_word, |
| 346 | "HighlightAll": highlight_all, |
| 347 | "MaxFragments": max_fragments, |
| 348 | "FragmentDelimiter": fragment_delimiter, |
| 349 | } |
| 350 | self.options = { |
| 351 | option: value for option, value in options.items() if value is not None |
| 352 | } |
| 353 | expressions = (expression, query) |
| 354 | if config is not None: |
| 355 | config = SearchConfig.from_parameter(config) |
| 356 | expressions = (config, *expressions) |
| 357 | super().__init__(*expressions) |
| 358 | |
| 359 | def as_sql(self, compiler, connection, function=None, template=None): |
| 360 | options_sql = "" |
nothing calls this directly
no test coverage detected