Alex,

I downloaded your app and ran it. If I understand you correctly, you're 
trying to get "Medical" to show up instead of "1" when you navigate to 
Humanlanguages -> English -> Dictionarytypes -> Words?

I achieved this by editing your db.py to the following:

##...
## Dictionary type means what category of dictionary is it? Medical, 
computer,etc.  There is one for each language.
db.define_table('DictionaryType',
    Field('dictionaryName','string'),
    Field('comments','string'), 
    Field('languageID','reference HumanLanguage'),
    Field('DictionaryReferenceModelID', 'reference 
DictionaryReferenceModel'), 
    auth.signature, 
    format='%(dictionaryName)s') # added format tag here
db.DictionaryType.dictionaryName.requires = IS_NOT_EMPTY()
db.DictionaryType.languageID.requires = IS_IN_DB(db, 'HumanLanguage.id', 
'%(languageName)s',zero=T('choose one'))
db.DictionaryType.DictionaryReferenceModelID.requires = IS_IN_DB(db, 
'DictionaryReferenceModel.id', '%(DictionaryTypeID)s',zero=T('choose one'))
##...

..and I removed lines 16 and 17 from your default.py controller (the 
db.Word.dictionaryTypeID.represent statements). 

Try that and see if that was what you were going for.

On Thursday, February 21, 2013 7:35:52 PM UTC-6, Alex Glaros wrote:
>
> Instead of *db.Word.dictionaryTypeID* displaying (which is a foreign key 
> in db.Word), I’d like a value from the foreign table to appear, i.e., 
> DictionaryType. dictionaryName.
>
>
> In the example below, when user cascades down to the Word table, it only 
> shows db.Word.dictionaryTypeID but I’d like to add the corresponding 
> DictionaryType. dictionaryName value to it.
>
>
> def search_lang():  
>
>    grid = SQLFORM.smartgrid(db.HumanLanguage, 
> linked_tables=['Word','DictionaryType'], fields = [db.HumanLanguage.id, 
> db.HumanLanguage.languageName, db.Word.id, db.Word.wordName, 
> db.Word.definition, db.DictionaryType.dictionaryName,
>
>        *db.Word.dictionaryTypeID*],
>
>        user_signature=False)
>
>    return dict(grid=grid)
>
>
> id<http://127.0.0.1:8000/tech_dictionary/default/search_lang/HumanLanguage/Word.languageID/1?keywords=&order=Word.id>
>   
>   
> Wordname<http://127.0.0.1:8000/tech_dictionary/default/search_lang/HumanLanguage/Word.languageID/1?keywords=&order=Word.wordName>
>   
>   
> Definition<http://127.0.0.1:8000/tech_dictionary/default/search_lang/HumanLanguage/Word.languageID/1?keywords=&order=Word.definition>
>   
>   
> Dictionarytypeid<http://127.0.0.1:8000/tech_dictionary/default/search_lang/HumanLanguage/Word.languageID/1?keywords=&order=Word.dictionaryTypeID>
> 1 beaker    glass jar     1
>
>
> Want to replace the "1" under Dictionarytypeid with value from foreign 
> table.
>
> Thanks, 
>
> Alex Glaros
>
>

-- 

--- 
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