Of course, silly me. Couldn't see the trees for the forest :-) Thank you Anthony.
Chris On Thu, Apr 19, 2012 at 1:20 AM, Anthony <abasta...@gmail.com> wrote: > db.property.property_type.writable = False > > Anthony > > > On Wednesday, April 18, 2012 4:32:02 PM UTC-4, leftcase wrote: >> >> I've put this into the controller to test this out: >> >> def create_newbuild(): >> #newbuild and resale properties share the same table. >> #the extraneous fields are rendered non-writable by the below >> db.property.land.writable = False >> db.property.reference_number.**writable = False >> db.property.habitable_area.**writable = False >> db.property.utilities.writable = False >> db.property.address.writable = False >> db.property.postcode.writable = False >> db.property.land.readable = False >> db.property.reference_number.**readable = False >> db.property.habitable_area.**readable = False >> db.property.utilities.readable = False >> db.property.address.readable = False >> db.property.postcode.readable = False >> db.property.property_type.**default="2" #select the newbuild >> property type and hide the option from the user >> db.property.property_type.**readable = False >> form=SQLFORM(db.property) >> if form.process().accepted: >> response.flash = 'form accepted' >> elif form.errors: >> response.flash = 'form has errors' >> else: >> response.flash = 'please fill out the form' >> return dict(form=form) >> >> Strange thing is though that the property_type field still appears on the >> form. Any ideas why? >> >> Thank you, >> >> Chris >> >> On Wed, Apr 18, 2012 at 3:43 PM, Chris Rowson < >> christopherrow...@gmail.com> wrote: >> >>> Thanks for confirming this for me, this did seem to be the most sensible >>> way to approach the problem :-) >>> >>> Chris >>> >>> >>> On Wed, Apr 18, 2012 at 1:04 AM, simon <simo...@gmail.com> wrote: >>> >>>> You can do this with a single form. At the top of the controller set >>>> readable=false, writable=false for the fields you do not want on the form. >>>> >>>> On Tuesday, 17 April 2012 23:44:54 UTC+1, leftcase wrote: >>>> >>>>> I'm a new adopter of web2py and I'm trying to learn the framework by >>>>> building a simple property site. >>>>> >>>>> I have two types of properties, new or old. >>>>> >>>>> New properties have a few core attributes, let's say name, price, >>>>> location, bedrooms >>>>> >>>>> Old properties have the same core attributes with a few more added on, >>>>> for instance utilities, land, lease type. >>>>> >>>>> I've tried making a table for new properties and a table for old >>>>> properties but it seems to complicate things if I for instance want to >>>>> list >>>>> all types of properties (new and old) and order by price (I've been >>>>> struggling to figure out how to aggregate the results from both tables >>>>> then >>>>> order by price). >>>>> >>>>> Would it make more sense to have one table with all of the fields for >>>>> new and old properties and simply create two different forms with >>>>> different >>>>> fields exposed depending on whether or not the user wants to create a new >>>>> or an old property? >>>>> >>>>> Thanks in advance, >>>>> >>>>> Chris >>>>> >>>> >>> >>