Hi, there https://github.com/daxslab/web2py-model-class-declaration is a plugin that tries to give the weppy syntax for models to web2py, you can look it and tell me what you think.

Greetings.


El 07/12/15 a las 06:07, Alessio Varalta escribió:
Thanks for the help. I found the solution in this document https://drive.google.com/file/d/0B1MqW7JZ47SybHNnMFdPWmNQcHc/view?usp=drive_web where there is a explanation for create a class

On Sunday, 6 December 2015 19:59:20 UTC+1, Anthony wrote:

    On Sunday, December 6, 2015 at 9:49:49 AM UTC-5, Alessio Varalta
    wrote:

        This solution for me is not good. Ok in this case work but
        virtual field allows only simple operation on the single filed
        of a table.


    A virtual/method field can be as complex as you want it to be, and
    it does not operate on only a single field of a record. Rather, an
    entire record is passed to it. Furthermore, method fields can take
    additional arguments and of course have access to any global
    objects as well. Perhaps you are confused because the functions of
    virtual/method fields are often defined using lambdas, but you
    could instead define a separate function using "def" and then
    specify that function in the definition of the virtual field.

        I want class with function where i can use cicle and where i
        can use another dal object..This is present for all frameworks
        java-ruiby!!!!!!!!!!!!!!! for exmpale


    I don't see how you would /need/ a class for anything you want to
    do. You could simply create functions and pass the records to the
    functions (the DAL method fields are just a convenient way to
    attach such functions as pseudo-methods of the record). If you
    want a way to organize a set of related functions, you could still
    create a class and just define a set of static methods.

    If you want an ORM, you might try the weppy ORM or SQLAlchemy or
    another framework altogether, but the web2py DAL is simply not an
    ORM and is not going to be. Nevertheless, it is not clear why you
    would need an ORM or classes to do what you want to do.

        Class Person extend Model
          string name,
          int age ecc..
          function calculateNationOfPerson(id){
            Nation nation=new Nation('all')
            return nation.find_nation_of_person(id)
          }
        }


    I don't know exactly what the above is attempting to do, as the
    data model of nation is not clear (i.e., is "id" the id of the
    Person record, and if so, how does the Nation object use that to
    find the person's nation?), so I won't attempt any web2py code.
    But in principle, I don't see why you couldn't define a similar
    function and just pass a web2py Row object to it (and optionally,
    attach it as a method via a method field).

    Anthony

--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
---
You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected] <mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.



--
Este mensaje le ha llegado mediante el servicio de correo electronico que 
ofrece Infomed para respaldar el cumplimiento de las misiones del Sistema 
Nacional de Salud. La persona que envia este correo asume el compromiso de usar 
el servicio a tales fines y cumplir con las regulaciones establecidas

Infomed: http://www.sld.cu/

--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- You received this message because you are subscribed to the Google Groups "web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to