it's only one user that I need to enter into the database at a time, and only the username. reportedby needs to be text due to another application that uses the same database.

On 2/23/2012 2:51 PM, Richard Vézina wrote:
Ok,

So you need to create a foreign key relation... So you need "requires="...

db.ips.reportedby.requires=IS_IN_DB(db, 'ips.id <http://ips.id>', '%(first_name)s %(last_name)s %(username)s %(whateverfieldname)s')

If you have only one referenced user you will have to change the type of reportedby to integer since the id of ips is a int. If you want to reference many users you will have to add something to you IS_IN_DB requires :

db.ips.reportedby.requires=IS_IN_DB(db, 'ips.id <http://ips.id>', '%(first_name)s %(last_name)s %(username)s %(whateverfieldname)s', multiple=True)

And you will have to change also the type of the field for : list:reference type

See book chapter 6 whit keyword list:reference

Richard


On Thu, Feb 23, 2012 at 2:43 PM, Larry G. Wapnitsky <la...@kvetsch.com <mailto:la...@kvetsch.com>> wrote:

    I need to have the username added to another SQL table on
    submission of a form.

    This is some of the code:

    db.define_table('ips',
        Field('id', 'id'),
        Field('ipaddress','string', length=15, unique=True),
        Field('dateadded', 'datetime', default=request.now),
        Field('reportedby', 'string', db.auth_user,  writable=False,
    readable=False),
        Field('updated', 'datetime', default=request.now),
        Field('attacknotes', 'text'),
        Field('b_or_w', 'string', length=1),
        migrate=False)


    db.ips.ipaddress.requires = [IS_NOT_IN_DB(db, 'ips.ipaddress')]
    db.ips.ipaddress.requires.append(IS_IPV4())


    the field 'reportedby' needs to be filled in with the username
    taken from AD for the logged in user.


    On 2/23/2012 2:37 PM, Richard Vézina wrote:
    Ok, but what's is the problem... I don't understand sorry.

    Richard

    On Thu, Feb 23, 2012 at 2:33 PM, Larry G. Wapnitsky
    <la...@kvetsch.com <mailto:la...@kvetsch.com>> wrote:

        The issue is not putting the username into the web2py
        database, but another database that's storing information.

        On 2/23/2012 2:32 PM, Richard Vézina wrote:
        I am not sure how you connect to LDAP, but there is
        utilities to connect LDAP with web2py. You should read about
        those in the book searching with LDAP as keyword. If you
        only want to import LDAP user into web2py database table, I
        suggest you to use the user table of the RBAC.

        So then you can access those entries with CRUD, but also
        manage who is allow to access those sensitive informations.

        Richard

        On Thu, Feb 23, 2012 at 2:13 PM, Larry Wapnitsky
        <la...@kvetsch.com <mailto:la...@kvetsch.com>> wrote:

            (newbie disclaimer :))

            I'm logging in to my application via AD/LDAP.  I can get
            the variable of the username with no issue.  What i need
            to do next is take this variable and insert it into a
            field in a CRUD form and have it show in my database.

            Thanks,
            Larry





Reply via email to