I tried it without the dotted notation, it gets rid of the error message, 
but
in the admin interface it shows raw integer values for the foreign key 
fields rather than the value from the referenced table.
Do I need to add something else?


On Friday, October 11, 2013 2:02:42 AM UTC-10, Niphlod wrote:
>
> I don't think that you need to use the dotted notation for the reference. 
> you just have a table whose pk is "model_id" instead of "id".
> Try just 'reference car_model'.
>
> PS: keyed table in web2py are when you need to pass a primarykey=[] to the 
> table definition.... in your case it's just a matter of column names more 
> than one of table structure.
>
> On Friday, October 11, 2013 12:25:33 PM UTC+2, James Thompson wrote:
>>
>> Wondering about support for legacy Mysql tables in web2py.  Read the book 
>> section on legacy databases, but keep getting:
>> <type 'exceptions.SyntaxError'> keyed tables can only reference other 
>> keyed tables (for now)
>> My mysql db and web2py models like something like this:
>>
>> CREATE TABLE `car_models` ( 
>>   `model_id` int(10) unsigned NOT NULL auto_increment, 
>>   `model_name` text NOT NULL, 
>>   PRIMARY KEY  (`model_id`) 
>> ) 
>>
>> CREATE TABLE `cars` ( 
>>   `car_id` int(10) unsigned NOT NULL auto_increment, 
>>   `model_id` int(10) unsigned NOT NULL, 
>>   PRIMARY KEY  (`car_id`) 
>> ) 
>>
>> web2py model:
>>
>> x_db = DAL('mysql://user:password@db/database')
>>
>> x_db.define_table('car_models', 
>>     Field('model_id','id'), 
>>     Field('model_name','string'), 
>>     migrate=False 
>> ) 
>>
>> x_db.define_table('cars', 
>>     Field('car_id','id'), 
>>     Field('model_id','reference car_models.model_id'), 
>>     Field('note','text'), 
>>     migrate=False 
>> ) 
>>
>>
>>

-- 
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 web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to