content structure - real-estate project

zerobe - November 1, 2009 - 07:05

I am working on a real estate project, the client want to be able to define a construction projects with following properties (name, location, type, et.... Then within each project client need to be able to break it into blocks or buildings, In each block or building we need to created define the actual property content (apartments, Houses,etc...)

The property will have various details, like number, area, original price, sell price, customer details, status, model, floor layout pictures, etc...

Each property must be linked to a project and a block within that project.

..........................................................................Project A
...........Block 1 / building 1....................................Block 2 / Building 2...............................Block N/ Building N
__House 1 House 2... House N_____________House N+1, House N+2,...., House M__________House M+1, House M+2,

My question is, what is the best approach to define such structure. should I start with defining a project type, that has name, location, block (list), models (list), etc.

Then define property type that has a project fields (project name, project>location, etc..) in the property type. is this possible?

I welcome any suggestion even to refuse this approach due to complexity, but need your recommendation.

please advice

Thanks

Not at all hopeless

zirvap - November 3, 2009 - 21:02

This sounds like a fairly simple thing to implement using taxonomy. Create hierarchical categories like this:
- Project A
-- Block 1
-- Block 2
-- Block N
- Project B
-- Building 1
-- Building 2
-- Building N
You can add information about the project and blocks in the term description.

Then create a content type for properties, using CCK (Content Construction Kit) for the various details.
When you make an entry for a new property, just give it the category for the correct block/building.

An alternative, which is better suited if you need to enter a lot of info about projects and/or blocks, is to use CCK's node reference. Make separate content types for projects, blocks, and properties. A block will have a node reference (a kind of pointer) to a project. A property will have a node reference to a block.

For either solution, use Views to make pretty lists, so that when you view a project you can see the blocks and properties belonging to it.

http://drupal.org/handbook/modules/taxonomy
http://drupal.org/project/cck
http://drupal.org/project/views

 
 

Drupal is a registered trademark of Dries Buytaert.