mirror of
https://github.com/osm-search/Nominatim.git
synced 2024-11-22 12:06:27 +03:00
reduce importance when computed from search rank
This commit is contained in:
parent
dc1baaa0af
commit
c6d40d4bf4
@ -130,7 +130,7 @@ BEGIN
|
||||
|
||||
-- Still nothing? Fall back to a default.
|
||||
IF result.importance is null THEN
|
||||
result.importance := 0.75001 - (rank_search::float / 40);
|
||||
result.importance := 0.40001 - (rank_search::float / 75);
|
||||
END IF;
|
||||
|
||||
{% if 'secondary_importance' in db.tables %}
|
||||
|
@ -233,7 +233,7 @@ class BaseResult:
|
||||
of the value or an artificial value computed from the place's
|
||||
search rank.
|
||||
"""
|
||||
return self.importance or (0.7500001 - (self.rank_search/40.0))
|
||||
return self.importance or (0.40001 - (self.rank_search/75.0))
|
||||
|
||||
|
||||
def localize(self, locales: Locales) -> None:
|
||||
|
@ -700,7 +700,7 @@ class PlaceSearch(AbstractSearch):
|
||||
or (details.viewbox is not None and details.viewbox.area < 0.5):
|
||||
sql = sql.order_by(
|
||||
penalty - sa.case((tsearch.c.importance > 0, tsearch.c.importance),
|
||||
else_=0.75001-(sa.cast(tsearch.c.search_rank, sa.Float())/40)))
|
||||
else_=0.40001-(sa.cast(tsearch.c.search_rank, sa.Float())/75)))
|
||||
sql = sql.add_columns(t.c.importance)
|
||||
|
||||
|
||||
|
@ -77,7 +77,7 @@ def test_search_details_minimal():
|
||||
'admin_level': 15,
|
||||
'names': {},
|
||||
'localname': '',
|
||||
'calculated_importance': pytest.approx(0.0000001),
|
||||
'calculated_importance': pytest.approx(0.00001),
|
||||
'rank_address': 30,
|
||||
'rank_search': 30,
|
||||
'isarea': False,
|
||||
|
@ -37,7 +37,7 @@ def test_minimal_detailed_result():
|
||||
|
||||
assert res.lon == 23.1
|
||||
assert res.lat == 0.5
|
||||
assert res.calculated_importance() == pytest.approx(0.0000001)
|
||||
assert res.calculated_importance() == pytest.approx(0.00001)
|
||||
|
||||
def test_detailed_result_custom_importance():
|
||||
res = DetailedResult(SourceTable.PLACEX,
|
||||
|
Loading…
Reference in New Issue
Block a user