This page has some resources.

https://trypyramid.com/documentation.html

--steve


On 11/16/23 1:37 PM, Oberdan Santos wrote:
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 
<http://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
 
<https://groups.google.com/d/msgid/pylons-discuss/d1428c3b-9447-428f-b9e4-1c808f2c83b2n%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/0b0d2170-e6fa-4190-a235-492c7f779f71%40gmail.com.

Reply via email to