I have done a lot of reading, some of it with tutorials, but very 
superficial.
I have some scripts with a database without using http transactions, which 
work normally.
Any suggestions for someone who could be helping me debug the code or even 
yourself and how I can pay for it?

Anyway, thanks for the support.


Em quinta-feira, 16 de novembro de 2023 às 18:24:43 UTC-3, Oberdan Santos 
escreveu:

> Sim!!  importante dica.
>
> Em quinta-feira, 16 de novembro de 2023 às 18:19:06 UTC-3, Laurent Daverio 
> escreveu:
>
>> Yes, that's true. If you write a monolithic app with Jinja templates, you 
>> will use {{ }}. If you use a Javascript frontend, you will find that `${}` 
>> is very convenient :)
>>
>> Le jeu. 16 nov. 2023 à 21:52, Florian Schulze <[email protected]> 
>> a écrit :
>>
>>> With Jinja Templates you have to use {{ save_url }} not ${save_url}. You 
>>> can see from the URL the form is trying to POST to that it contains the $ 
>>> sign. You can also see such things from your Browser HTML Inspector.
>>>
>>> Regards, 
>>> Florian Schulze
>>>
>>> On 16 Nov 2023, at 14:51, Oberdan Santos wrote:
>>>
>>> Hello!! I am facing a problem when trying to post data to the database. 
>>> When asking to send the application data I receive the following: Squashed 
>>> pyramid.httpexceptions.HTTPNotFound at 
>>> http://localhost:6543/mod_plataforma/mod1_plataforma/recepx/$%7Bsave_url%7D
>>>
>>> . Below is information about my files.
>>>
>>> # piprdc/piprdc/routes.py
>>> def includeme(config):
>>>      config.add_static_view('static', 'static', cache_max_age=3600)
>>>      config.add_route('home', '/')
>>>      config.add_route('modulo_x', '/mod_plataforma')
>>>      config.add_route('modulo1', '/mod_plataforma/mod1_plataforma')
>>>      config.add_route('modulo2', '/mod_plataforma/mod2_plataforma')
>>>      config.add_route('modulo3', '/mod_plataforma/mod3_plataforma')
>>>      config.add_route('modulo4', '/mod_plataforma/mod4_plataforma')
>>>      config.add_route('modulo5', '/mod_plataforma/mod5_plataforma')
>>>      config.add_route('modulo6', '/mod_plataforma/mod6_plataforma')
>>>      config.add_route('abcx', '/mod_plataforma/mod1_plataforma/recepx')
>>>      config.add_route('add_reg', 
>>> '/mod_plataforma/mod1_plataforma/recepx/add_reg')
>>>      config.add_route('query', 
>>> '/mod_plataforma/mod1_plataforma/recepx/query')
>>>
>>> ..............................
>>>
>>> #views/default.py
>>> from pyramid.view import view_config
>>> from pyramid.response import Response
>>> from sqlalchemy.exc import SQLAlchemyError, DBAPIError
>>> from pyramid.httpexceptions import HTTPFound
>>> from .. import models
>>> from ..models import Patient
>>> from ..models import get_tm_session
>>> dbsession = get_tm_session
>>>
>>> view_config(route_name='add_reg', 
>>> renderer='piprdc:templates/reg_pacx.jinja2')
>>> def add_reg(request):
>>>      save_url = request.route_url('add_reg')
>>>      request.route_url('query')
>>>      print('RUN')
>>>      if request.params:
>>>          id=request.params['id']
>>>          name=request.params['name']
>>>          age=request.params['age']
>>>          birth_date=request.params['birth_date']
>>>          sex=request.params['sex']
>>>          race=request.params['race']
>>>          fone=request.params['fone']
>>>          address=request.params['address']
>>>          cpf=request.params['cpf']
>>>          cns=request.params['cns']
>>>          patients=Patient(id=id, name=name, age=age, 
>>> date_birth=date_birth, sex=sex,
>>>                             race=race, phone=phone, address=address, 
>>> cpf=cpf, cns=cns)
>>>          try:
>>>              dbsession.add_reg(patients)
>>>              return HTTPFound(location=request.route_url('query'))
>>>          except DBAPIError:
>>>              return Response("DB ERROR")
>>>      else:
>>>          print('DO NOT RUN')
>>>          return{'save_url': save_url, 'project': 'piprdc'}
>>>
>>> ........................................
>>>
>>> #templates/reg_pacx.jinja2
>>> {% extends "basefull.jinja2" %}
>>> {% block container %}
>>> <html>
>>> <body>
>>>     <h1><span class="font-semi-bold">Patient registration</span></h1>
>>>     <form action="${save_url}" method="POST">
>>>     <p>Patient Id: <input type="Integer" name="id"/> </p>
>>>     <p>Patient Name: <input type="text" name="name"/> </p>
>>>     <p>Age: <input type="Integer" name="age"/> </p>
>>>     <p>Date of birth: <input type="Integer" name="date_birth"/> </p>
>>>     <p>Gender: <input type="text" name="sex"/> </p>
>>>     <p>Race: <input type="text" name="breed"/> </p>
>>>     <p>Phone: <input type="text" name="phone"/> </p>
>>>     <p>Address: <input type="text" name="address"/> </p>
>>>     <p>CPF: <input type="Integer" name="cpf"/> </p>
>>>     <p>CNS: <input type="Integer" name="cns"/> </p>
>>>     <p><input type="submit" value="Submit"> </p>
>>> </body>
>>> </html>
>>> {% endblock container %}
>>>
>>> ................................
>>> #models/__init__.py
>>>
>>> from sqlalchemy import engine_from_config
>>> from sqlalchemy.orm import sessionmaker
>>> from sqlalchemy.orm import configure_mappers
>>> from sqlalchemy_continuum.plugins import Plugin
>>> import zope.sqlalchemy
>>>
>>> from .mymodel import Patient # flake8: noqa
>>>
>>> configure_mappers()
>>>
>>> def get_engine(settings, prefix='sqlalchemy.'):
>>>      return engine_from_config(settings, prefix)
>>>
>>> def get_session_factory(engine):
>>>      factory = sessionmaker()
>>>      factory.configure(bind=engine)
>>>      return factory
>>>
>>> def get_tm_session(session_factory, transaction_manager, request=None):
>>> dbsession = session_factory(info={"request": request})
>>>      zope.sqlalchemy.register(
>>>          dbsession, transaction_manager=transaction_manager
>>>      )
>>>      return dbsession
>>> def includeme(config):
>>>    
>>>      settings = config.get_settings()
>>>      settings['tm.manager_hook'] = 'pyramid_tm.explicit_manager'
>>>    
>>>       config.include('pyramid_tm')
>>>
>>>      config.include('pyramid_retry')
>>>
>>>      # hook to share the dbengine fixture in testing
>>>      dbengine = settings.get('dbengine')
>>>      if not dbengine:
>>>          dbengine = get_engine(settings)
>>>
>>>      session_factory = get_session_factory(dbengine)
>>>      config.registry['dbsession_factory'] = session_factory
>>>    
>>>      def dbsession(request):
>>>          dbsession = request.environ.get('app.dbsession')
>>>          if dbsession is None:
>>>               dbsession = get_tm_session(
>>>                  session_factory, request.tm, request=request
>>>       config.add_request_method(dbsession, reify=True)
>>>
>>> Any help is welcome.
>>> --
>>> You received this message because you are subscribed to the Google 
>>> Groups "pylons-discuss" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/pylons-discuss/6c951fdb-95ea-440f-b3f7-81f93845dacfn%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/pylons-discuss/6c951fdb-95ea-440f-b3f7-81f93845dacfn%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "pylons-discuss" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>>
>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/pylons-discuss/CF08852E-F452-4544-A4B1-F91630CDBA51%40florian-schulze.net
>>>  
>>> <https://groups.google.com/d/msgid/pylons-discuss/CF08852E-F452-4544-A4B1-F91630CDBA51%40florian-schulze.net?utm_medium=email&utm_source=footer>
>>> .
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"pylons-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/pylons-discuss/d1428c3b-9447-428f-b9e4-1c808f2c83b2n%40googlegroups.com.

Reply via email to