thx. Just checked with stable and development, columns get migrated and a
costraint is applied both to the parent and the child table
On Wednesday, December 5, 2012 7:58:30 PM UTC+1, Joe Barnhart wrote:
>
> Ok, here is the setup. I have a table defined:
>
>
> db.define_table("xxxxxxx",
> Field("lastname","string",length=50,label="Last name",requires=
> IS_NOT_EMPTY() ),
> Field("firstname","string",length=50,label="First name",requires=
> IS_NOT_EMPTY() ),
> Field("middlename","string",length=50,label="Middle name" ),
> Field("prefname","string",length=50,label="Nickname"),
> Field("birth","date",label="Birth date",requires=IS_DATE()),
> Field("ussnum","string",length=14,unique=True),
> . . .
>
>
>
> This table is used in a later table definition...
>
>
> db.define_table("yyyyyyy", db.xxxxxxx,
> Field("regstate","string",length=10,label="Registration state",
> readable=False,writable=False),
> Field("processdate","date",label="Process date",readable=False,
> writable=False),
> . . .
>
>
> I added the "unique=True" constraint to the column highlighted in table
> xxxxxxx and then opened a page to cause the web2py table migration to take
> place. I examined both table xxxxxxx and yyyyyyy with the Postgres tools
> and found that table xxxxxxx had the column constraint added but table
> yyyyyyy did not.
>
> -- Joe B.
>
>
>
> On Wednesday, December 5, 2012 3:20:55 AM UTC-8, Niphlod wrote:
>>
>> uhm: are you sure that adding unique=True gets the created index also in
>> the parent table ? I think that the unique is enforced only on creation and
>> not in migration (but the requires=IS_IN_DB() gets added anyway). In any
>> case, what are you observing? (in other words, post a model and a
>> controller to reproduce the issue)
>>
>> On Wednesday, December 5, 2012 12:08:03 PM UTC+1, Joe Barnhart wrote:
>>>
>>> This is probably old news, but I noticed this evening that altering a
>>> table which is used as a "parent" by another does not cause its child table
>>> to be altered.
>>>
>>> I have a table which I added a "unique=True" constraint on this evening
>>> and its child table did not get the added constraint when web2py did its
>>> migration.
>>>
>>> (I admit to being lazy and not searching to see if this has been
>>> reported before. Google groups are pretty hard to search for something
>>> this specific.)
>>>
>>> -- Joe B.
>>>
>>>
--