@Niphlod, yes, that is what i was trying but had some difficulty initially. finally figured it out now :) thanks
On Monday, April 29, 2013 12:17:02 AM UTC+5:30, Niphlod wrote: > > you then need a common place to store the company code associated for > every user (e.g. "a_variable"): instead of using map.get(request.args(0)) > you'd then need to do map.get("a_variable"). > > The key point of the implementation at that point (if you don't want to > have the auth_* tables in a common database) is that you need to use a > custom form to prepare the "username, password, company_code" inputs > because you don't know what db to use before the user fills the forms and > sends the results hitting the "submit" button. > > On Sunday, April 28, 2013 8:15:43 PM UTC+2, LJ wrote: >> >> Thanks for the reply Massimo. >> >> But this will require different URLs for each company right? >> I want a common URL where they get a login screen and they enter >> Username, Password, Company code. The rest of the interactions will depend >> on the company code. >> >> >> >> On Saturday, April 27, 2013 10:23:52 AM UTC+5:30, Massimo Di Pierro wrote: >>> >>> Imagine a table like: >>> >>> map = {'company1': 'sqlite://company1.sqlite','company2: >>> 'sqlite://company2.sqlite','company3': 'sqlite://company3.sqlite'} >>> >>> then you can do: >>> >>> dburi = map.get(request.args(0)) >>> if not dburi: raise HTTP(404) >>> db = DAL(dburi) >>> >>> Now when you do >>> >>> http://127.0.0.1:8000/app/default/index/company1 >>> >>> The company1 specifies the database. >>> >>> If you have another app you can do the same but replace >>> >>> db = DAL(dburi) >>> >>> with >>> >>> db = DAL(dburi, >>> folder=os.path.join(request.folder,'..','otherapp','databases')) >>> >>> and it will share the database with the otherapp. >>> >>> >>> On Friday, 26 April 2013 23:43:47 UTC-5, LJ wrote: >>>> >>>> Hi >>>> >>>> I am new to web2py as well as python, but i found it very interesting >>>> developing some simple applications. However, i am unsure about how to >>>> configure the application for using multiple database depending on user >>>> login. There are two possible scenarios i am considering: >>>> >>>> Scenario 1 (Single instance, multiple databases) >>>> 1. User visits www.foobar.com >>>> 2. Login page asks for username, password, company code. >>>> 3. Controllers/Views/Models are identical for users from all companies. >>>> Databases are different. >>>> 4. Depending on company code, the application connects to the >>>> appropriate DB and authenticates user. >>>> 5. User from different company accesses different database. >>>> >>>> >>>> Scenario 2: Multiple instances, multiple databases >>>> 1. User visits www.foobar.com >>>> 2. Login page asks for username, password, company code. >>>> 3. Controllers/Views/Models are slightly different for each company as >>>> are the databases. >>>> 4. Depending on company code, the appropriate functions/views are >>>> called and the appropriate database is affected. >>>> 5. User from different company accesses different database and has a >>>> different set of controllers and views. >>>> >>>> How should the application be structured to enable each of these >>>> scenarios. I was unable to find the solution in other threads. >>>> >>>> Thanks in advance >>>> >>> -- --- 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 web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.