thanks for working through this Kyle

I made the changes but I don't see what would make "Medical" instead of "1" 
appear without the "represent" clause.

It now runs without errors but displays "1" instead of "Medical"

Did any lines besides the added "format" lines change, and the deleted #16 
and 17?

Where is the functionality that substitutes dictionaryName 
for dictionaryTypeID?

thanks,

Alex

On Monday, February 25, 2013 7:00:22 AM UTC-8, Kyle Flanagan wrote:
>
> 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