Projet

Général

Profil

Bug #28638

'LazyFieldVar' object has no attribute 'split'

Ajouté par Thomas Noël il y a plus de 5 ans. Mis à jour il y a plus de 5 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
05 décembre 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:

Description

Un formulaire avec, sur une page :
  • un champ carte form_var_map
  • un champ liste avec une datasource
  {% if form_var_map %}{{ passerelle_url }}sig/query/?lat={{ form_var_map|split:";"|first}}&lon={{ form_var_map|split:";"|last}}{% endif %}

Tout se passe bien sauf à la validation de la page :

Exception:
  type = '<type 'exceptions.AttributeError'>', value = ''LazyFieldVar' object has no attribute 'split''

Stack trace (most recent call first):
  File "/home/thomas/dev/publik/src/wcs/wcs/qommon/templatetags/qommon.py", line 40, in split
    38 @register.filter
    39 def split(string, separator=' '):
>   40     return (string or '').split(separator)
    41 
    42 @register.filter

  locals: 
     separator = u';'
     string = <wcs.variables.LazyFieldVar object at 0x7f1728310050>

  File "/home/thomas/dev/publik/venv/lib/python2.7/site-packages/django/template/base.py", line 675, in resolve
   673                 new_obj = func(obj, autoescape=context.autoescape, *arg_vals)
   674             else:
>  675                 new_obj = func(obj, *arg_vals)
   676             if getattr(func, 'is_safe', False) and isinstance(obj, SafeData):
   677                 obj = mark_safe(new_obj)

  locals: 
     arg = u';'
     arg_vals = [u';']
     args = [(False, u';')]
     context = [{'False': False, 'None': None, 'True': True}, {'session_user_field_adresse_electronique': 'tnoel+publik-devinst@entrouvert.com', 'session_user_backoffice_access': True, 'site_name': 'D\xc3\xa9marches', 'session_user_name_identifier_0': 'c28e3f33def248dd9198a22a8627ec44', 'global_title': 'D\xc3\xa9marche en ligne', 'env_settings_file': '/home/thomas/dev/publik/venv/conf/wcs_settings.py', 'statistics_url': 'https://bijoe.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_zipcode': '', 'idp_account_url': 'https://authentic.publik-tnoel.ddns.entrouvert.org/accounts/', 'session_user': <SqlUser 'Administrateur Publik' id:1>, 'favicon': 'blois-2019/img/favicon.ico', 'links': <function print_links at 0x7f172825bc80>, 'session_user_email': 'tnoel+publik-devinst@entrouvert.com', 'session_id': '9602a1d1807c0031', 'hobo_url': 'https://hobo.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_city': '', 'passerelle_url': 'https://passerelle.publik-tnoel.ddns.entrouvert.org/', 'session_user_field_civilite': 'Monsieur', 'attachments': <wcs.workflows.AttachmentsSubstitutionProxy object at 0x7f17282473d0>, 'portal_agent_title': 'Portail Agent', 'session_user_f_email': 'tnoel+publik-devinst@entrouvert.com', 'session_user_field_nom': 'Publik', 'script': <wcs.scripts.ScriptsSubstitutionProxy object at 0x7f1728247a90>, 'session_user_field_prenom': 'Administrateur', 'category_description': None, 'portal_agent_url': 'https://agent-combo.publik-tnoel.ddns.entrouvert.org/', 'no_extra_js': 'True', 'portal_user_title': 'Portail', 'portal_url': 'https://combo.publik-tnoel.ddns.entrouvert.org/', 'site_url': 'https://wcs.publik-tnoel.ddns.entrouvert.org', 'category_name': 'tests', 'theme': 'auch', 'session_user_f_mobile': '', 'session_user_field_code_postal': '', 'category_id': 'tests', 'today': '05/12/2018', 'header_welcome': '<h2>Bienvenue</h2>\n<p>Lorem ...</p>', 'agendas_url': 'https://chrono.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_email': 'tnoel+publik-devinst@entrouvert.com', 'session_user_display_name': 'Administrateur Publik', 'session_user_var_mobile': '', 'form': <wcs.variables.LazyFormData object at 0x7f1728247610>, 'category_slug': 'tests', 'manager_homepage_url': 'https://agent-combo.publik-tnoel.ddns.entrouvert.org/', 'webservice': <wcs.wscalls.WsCallsSubstitutionProxy object at 0x7f17282474d0>, 'session_user_field_commune': '', 'session_user_f_city': '', 'session_user_var_address': '', 'session_user_var_last_name': 'Publik', 'session_user_f_zipcode': '', 'session_user_f_address': '', 'session_user_field_adresse': '', 'session_user_f_phone': '', 'session_user_f_first_name': 'Administrateur', 'porte_doc_url': 'https://fargo.publik-tnoel.ddns.entrouvert.org/', 'now': '05/12/2018 15:04', 'announces_url': 'https://corbo.publik-tnoel.ddns.entrouvert.org/', 'theme_color': '#B3B18C', 'manager_homepage_title': 'Portail Agent', 'apa_users_grid': '', 'data_source': <wcs.data_sources.DataSourcesSubstitutionProxy object at 0x7f17282f9e50>, 'idp_url': 'https://authentic.publik-tnoel.ddns.entrouvert.org/', 'portal_user_url': 'https://combo.publik-tnoel.ddns.entrouvert.org/', 'session_user_admin_access': True, 'css_variant': 'auch', 'site_lang': 'fr', 'idp_registration_url': 'https://authentic.publik-tnoel.ddns.entrouvert.org/accounts/register/', 'services_url': 'https://wcs.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_title': 'Monsieur', 'site_url_backoffice': 'https://wcs.publik-tnoel.ddns.entrouvert.org/backoffice', 'session_user_var_first_name': 'Administrateur', 'eservices_url': 'https://wcs.publik-tnoel.ddns.entrouvert.org/', 'is_in_backoffice': False, 'session_user_f_title': 'Monsieur', 'site_theme': 'publik-base', 'session_user_field_mobile': '', 'session_user_var_phone': '', 'session_user_f_last_name': 'Publik', 'session_user_field_telephone': '', 'accueil_url': 'https://welco.publik-tnoel.ddns.entrouvert.org/'}]
     func = <function split at 0x7f1728341ed8>
     ignore_failures = False
     lookup = False
     obj = <wcs.variables.LazyFieldVar object at 0x7f1728310050>
     self = <django.template.base.FilterExpression object at 0x7f172822b0d0>

  File "/home/thomas/dev/publik/venv/lib/python2.7/site-packages/django/template/debug.py", line 98, in render
    96             if not hasattr(e, 'django_template_source'):
    97                 e.django_template_source = self.source
>   98             raise
    99         if (context.autoescape and not isinstance(output, SafeData)) or isinstance(output, EscapeData):
   100             return conditional_escape(output)

  locals: 
     context = [{'False': False, 'None': None, 'True': True}, {'session_user_field_adresse_electronique': 'tnoel+publik-devinst@entrouvert.com', 'session_user_backoffice_access': True, 'site_name': 'D\xc3\xa9marches', 'session_user_name_identifier_0': 'c28e3f33def248dd9198a22a8627ec44', 'global_title': 'D\xc3\xa9marche en ligne', 'env_settings_file': '/home/thomas/dev/publik/venv/conf/wcs_settings.py', 'statistics_url': 'https://bijoe.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_zipcode': '', 'idp_account_url': 'https://authentic.publik-tnoel.ddns.entrouvert.org/accounts/', 'session_user': <SqlUser 'Administrateur Publik' id:1>, 'favicon': 'blois-2019/img/favicon.ico', 'links': <function print_links at 0x7f172825bc80>, 'session_user_email': 'tnoel+publik-devinst@entrouvert.com', 'session_id': '9602a1d1807c0031', 'hobo_url': 'https://hobo.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_city': '', 'passerelle_url': 'https://passerelle.publik-tnoel.ddns.entrouvert.org/', 'session_user_field_civilite': 'Monsieur', 'attachments': <wcs.workflows.AttachmentsSubstitutionProxy object at 0x7f17282473d0>, 'portal_agent_title': 'Portail Agent', 'session_user_f_email': 'tnoel+publik-devinst@entrouvert.com', 'session_user_field_nom': 'Publik', 'script': <wcs.scripts.ScriptsSubstitutionProxy object at 0x7f1728247a90>, 'session_user_field_prenom': 'Administrateur', 'category_description': None, 'portal_agent_url': 'https://agent-combo.publik-tnoel.ddns.entrouvert.org/', 'no_extra_js': 'True', 'portal_user_title': 'Portail', 'portal_url': 'https://combo.publik-tnoel.ddns.entrouvert.org/', 'site_url': 'https://wcs.publik-tnoel.ddns.entrouvert.org', 'category_name': 'tests', 'theme': 'auch', 'session_user_f_mobile': '', 'session_user_field_code_postal': '', 'category_id': 'tests', 'today': '05/12/2018', 'header_welcome': '<h2>Bienvenue</h2>\n<p>Lorem ...</p>', 'agendas_url': 'https://chrono.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_email': 'tnoel+publik-devinst@entrouvert.com', 'session_user_display_name': 'Administrateur Publik', 'session_user_var_mobile': '', 'form': <wcs.variables.LazyFormData object at 0x7f1728247610>, 'category_slug': 'tests', 'manager_homepage_url': 'https://agent-combo.publik-tnoel.ddns.entrouvert.org/', 'webservice': <wcs.wscalls.WsCallsSubstitutionProxy object at 0x7f17282474d0>, 'session_user_field_commune': '', 'session_user_f_city': '', 'session_user_var_address': '', 'session_user_var_last_name': 'Publik', 'session_user_f_zipcode': '', 'session_user_f_address': '', 'session_user_field_adresse': '', 'session_user_f_phone': '', 'session_user_f_first_name': 'Administrateur', 'porte_doc_url': 'https://fargo.publik-tnoel.ddns.entrouvert.org/', 'now': '05/12/2018 15:04', 'announces_url': 'https://corbo.publik-tnoel.ddns.entrouvert.org/', 'theme_color': '#B3B18C', 'manager_homepage_title': 'Portail Agent', 'apa_users_grid': '', 'data_source': <wcs.data_sources.DataSourcesSubstitutionProxy object at 0x7f17282f9e50>, 'idp_url': 'https://authentic.publik-tnoel.ddns.entrouvert.org/', 'portal_user_url': 'https://combo.publik-tnoel.ddns.entrouvert.org/', 'session_user_admin_access': True, 'css_variant': 'auch', 'site_lang': 'fr', 'idp_registration_url': 'https://authentic.publik-tnoel.ddns.entrouvert.org/accounts/register/', 'services_url': 'https://wcs.publik-tnoel.ddns.entrouvert.org/', 'session_user_var_title': 'Monsieur', 'site_url_backoffice': 'https://wcs.publik-tnoel.ddns.entrouvert.org/backoffice', 'session_user_var_first_name': 'Administrateur', 'eservices_url': 'https://wcs.publik-tnoel.ddns.entrouvert.org/', 'is_in_backoffice': False, 'session_user_f_title': 'Monsieur', 'site_theme': 'publik-base', 'session_user_field_mobile': '', 'session_user_var_phone': '', 'session_user_f_last_name': 'Publik', 'session_user_field_telephone': '', 'accueil_url': 'https://welco.publik-tnoel.ddns.entrouvert.org/'}]
     e = AttributeError("'LazyFieldVar' object has no attribute 'split'",)
     self = <Variable Node: form_var_map|split:";"|last>

  File "/home/thomas/dev/publik/venv/lib/python2.7/site-packages/django/template/debug.py", line 83, in render_node
    81             if not hasattr(e, 'django_template_source'):
    82                 e.django_template_source = node.source
>   83             raise
    84 
    85
...

(trace complète attachée)


Fichiers

lazyfield-no-split.txt (74,5 ko) lazyfield-no-split.txt Thomas Noël, 05 décembre 2018 15:08

Demandes liées

Lié à w.c.s. - Development #28639: sur un champ carte, disposer de form_var_xxx_lat et form_var_xxx_lonFermé05 décembre 2018

Actions
Duplique w.c.s. - Bug #28193: 'LazyFieldVar' object has no attribute 'split'Fermé20 novembre 2018

Actions

Historique

#1

Mis à jour par Frédéric Péters il y a plus de 5 ans

Plutôt permettre form_var_map_lon et form_var_map_lat que permettre un truc pareil.

#2

Mis à jour par Thomas Noël il y a plus de 5 ans

  • Lié à Development #28639: sur un champ carte, disposer de form_var_xxx_lat et form_var_xxx_lon ajouté
#3

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Statut changé de Nouveau à Rejeté
#4

Mis à jour par Frédéric Péters il y a plus de 5 ans

  • Duplique Bug #28193: 'LazyFieldVar' object has no attribute 'split' ajouté

Formats disponibles : Atom PDF