huizebruin / Home-Assistant-Config

🏠 My huizebruin Home Assistant configuration, Be sure to 🌟 this repository for updates! huizebruin
MIT License
42 stars 9 forks source link

Template variable error: 'None' has no attribute #10

Closed remb0 closed 3 years ago

remb0 commented 3 years ago

Bij het gebruik van het pollen script, krijg ik de errors (volgens mij waren dat vroeger warnings)

ERROR (MainThread) [homeassistant.helpers.template] Template variable error: 'None' has no attribute 'Weed' when rendering '{{ state_attr("sensor.pollen_data", "Species").Weed.Chenopod }} /m³'

huizebruin commented 3 years ago

Erg vreemd, ik zie die fouten errors hier niet voorbij komen. ik gebruik de versie die online staat.

hiddit commented 3 years ago

Ik heb hier het zelfde probleem. Deze krijg ik plus meer op een fresh install in docker maar ook op een rpi4

2021-06-19 06:31:29 ERROR (MainThread) [homeassistant.helpers.template] Template variable error: 'None' has no attribute 'Weed' when rendering '{{ state_attr("sensor.pollen_data", "Species").Weed.Ragweed }} /m³' 2021-06-19 06:31:29 ERROR (MainThread) [homeassistant.helpers.event] Error while processing template: Template("{{ state_attr("sensor.pollen_data", "Species").Weed.Ragweed }} /m³") Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 389, in async_render render_result = _render_with_context(self.template, compiled, **kwargs) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1359, in _render_with_context return template.render(**kwargs) File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 1289, in render self.environment.handle_exception() File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 924, in handle_exception raise rewrite_traceback_stack(source=source) File "<template>", line 1, in top-level template code File "/usr/local/lib/python3.8/site-packages/jinja2/sandbox.py", line 326, in getattr value = getattr(obj, attribute) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1383, in _fail_with_undefined_error raise ex File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1375, in _fail_with_undefined_error return super()._fail_with_undefined_error(*args, **kwargs) jinja2.exceptions.UndefinedError: 'None' has no attribute 'Weed' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 505, in async_render_to_info render_info._result = self.async_render(variables, strict=strict, **kwargs) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 391, in async_render raise TemplateError(err) from err homeassistant.exceptions.TemplateError: UndefinedError: 'None' has no attribute 'Weed'

huizebruin commented 3 years ago

Ik zal vandaag eens kijken of ze de API weer hebben aangepast.

golles commented 3 years ago

Ik zie deze ook heel af en toe eens voorbij komen, ik heb het idee dat de api dan niks gereturned heeft en daardoor er niks ge-set kan worden (denk ik dit geval dat Weed None is in dit geval). Dit zou wel op te lossen zijn met None checks, maar dat maakt het wel een heel stuk lelijker

golles commented 3 years ago

Ik heb hier het zelfde probleem. Deze krijg ik plus meer op een fresh install in docker maar ook op een rpi4

2021-06-19 06:31:29 ERROR (MainThread) [homeassistant.helpers.template] Template variable error: 'None' has no attribute 'Weed' when rendering '{{ state_attr("sensor.pollen_data", "Species").Weed.Ragweed }} /m³' 2021-06-19 06:31:29 ERROR (MainThread) [homeassistant.helpers.event] Error while processing template: Template("{{ state_attr("sensor.pollen_data", "Species").Weed.Ragweed }} /m³") Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 389, in async_render render_result = _render_with_context(self.template, compiled, **kwargs) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1359, in _render_with_context return template.render(**kwargs) File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 1289, in render self.environment.handle_exception() File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 924, in handle_exception raise rewrite_traceback_stack(source=source) File "<template>", line 1, in top-level template code File "/usr/local/lib/python3.8/site-packages/jinja2/sandbox.py", line 326, in getattr value = getattr(obj, attribute) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1383, in _fail_with_undefined_error raise ex File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1375, in _fail_with_undefined_error return super()._fail_with_undefined_error(*args, **kwargs) jinja2.exceptions.UndefinedError: 'None' has no attribute 'Weed' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 505, in async_render_to_info render_info._result = self.async_render(variables, strict=strict, **kwargs) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 391, in async_render raise TemplateError(err) from err homeassistant.exceptions.TemplateError: UndefinedError: 'None' has no attribute 'Weed'

Zou je eens de json van de website willen delen? Dus even de url met je eigen lat/lng in de browser openen en het resultaat her posten, misschien mist het Weed gedeelte helemaal bij jou?

hiddit commented 3 years ago

Ik heb hier het zelfde probleem. Deze krijg ik plus meer op een fresh install in docker maar ook op een rpi4 2021-06-19 06:31:29 ERROR (MainThread) [homeassistant.helpers.template] Template variable error: 'None' has no attribute 'Weed' when rendering '{{ state_attr("sensor.pollen_data", "Species").Weed.Ragweed }} /m³' 2021-06-19 06:31:29 ERROR (MainThread) [homeassistant.helpers.event] Error while processing template: Template("{{ state_attr("sensor.pollen_data", "Species").Weed.Ragweed }} /m³") Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 389, in async_render render_result = _render_with_context(self.template, compiled, **kwargs) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1359, in _render_with_context return template.render(**kwargs) File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 1289, in render self.environment.handle_exception() File "/usr/local/lib/python3.8/site-packages/jinja2/environment.py", line 924, in handle_exception raise rewrite_traceback_stack(source=source) File "<template>", line 1, in top-level template code File "/usr/local/lib/python3.8/site-packages/jinja2/sandbox.py", line 326, in getattr value = getattr(obj, attribute) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1383, in _fail_with_undefined_error raise ex File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 1375, in _fail_with_undefined_error return super()._fail_with_undefined_error(*args, **kwargs) jinja2.exceptions.UndefinedError: 'None' has no attribute 'Weed' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 505, in async_render_to_info render_info._result = self.async_render(variables, strict=strict, **kwargs) File "/usr/src/homeassistant/homeassistant/helpers/template.py", line 391, in async_render raise TemplateError(err) from err homeassistant.exceptions.TemplateError: UndefinedError: 'None' has no attribute 'Weed'

Zou je eens de json van de website willen delen? Dus even de url met je eigen lat/lng in de browser openen en het resultaat her posten, misschien mist het Weed gedeelte helemaal bij jou?

als ik deze gebruik: Link, dat is de sample url uit de docs. dan krijg ik het zelfde in home assistent en in chrome 401.

of doe ik het verkeerd?

golles commented 3 years ago

Nee, mijn fout, op deze manier gaat de x-api-key header niet mee. Gebruik je trouwens echt deze lat/lng? Want daar zitten geen specifieke waarden in:

{
    "message": "success",
    "lat": 12,
    "lng": 77,
    "data": [
        {
            "Count": {
                "grass_pollen": 160,
                "tree_pollen": 106,
                "weed_pollen": 80
            },
            "Risk": {
                "grass_pollen": "High",
                "tree_pollen": "Moderate",
                "weed_pollen": "High"
            },
            "updatedAt": "2021-06-19T14:33:44.000Z"
        }
    ]
}
huizebruin commented 3 years ago

Nog even geduld, zoals het nu er naar uit ziet komt in de volgende maand versie de officiële intergratie. Deze is gebouwd door Frenck.

golles commented 3 years ago

Nog even geduld, zoals het nu er naar uit ziet komt in de volgende maand versie de officiële intergratie. Deze is gebouwd door Frenck.

Ik zie het, dat is goed nieuws! https://github.com/home-assistant/core/tree/dev/homeassistant/components/ambee

remb0 commented 3 years ago

nice! weer een dikke verbetering :)