21489 Posts in 5783 Topics by 2621 members
General Questions
SilverStripe Forums » General Questions » Retreiving an object whose category is the same as the page title
General questions about getting started with SilverStripe that don't fit in any of the categories above.
Moderators: martimiz, Howard, Sean, Ryan M., biapar, Willr, Ingo, swaiba, simon_w
|
Page:
1
|
Go to End | |
| Author | Topic: | 547 Views |
-
Retreiving an object whose category is the same as the page title

12 September 2009 at 11:34am
Hi
I am trying to retrieve an object that has a category the same as the page title. I am using the code
$MFoptions = DataObject::get_one("MFCategory", 'MFTitle='.$this->title);
but this errors with the message [User Error] Couldn't run query: SELECT `MFCategory`.*, `MFCategory`.ID, if(`MFCategory`.ClassName,`MFCategory`.ClassName,'MFCategory') AS RecordClassName FROM `MFCategory` WHERE (MFTitle=counselling) LIMIT 1 Unknown column 'counselling' in 'where clause'
So I get it is looking for a column called counselling cause it is not in '' but when I put it in '' ie $MFoptions = DataObject::get_one("MFCategory", 'MFTitle='.'$this->title');
it interprets the $this->title as a literal string. Please help, I know this must be simple to fix but I just can't work it out.
Thanks as always
MM
-
Re: Retreiving an object whose category is the same as the page title

12 September 2009 at 9:48pm
You're close to the solution. The Title has to be wrapped in quotes for MySQL, but you're doing it wrong. Should be:
$MFoptions = DataObject::get_one("MFCategory", "MFTitle='" . $this->title . "'");
Or maybe better to read:
$title = $this->title;
$MFoptions = DataObject::get_one("MFCategory", "MFTitle='$title'"); -
Re: Retreiving an object whose category is the same as the page title

13 September 2009 at 11:28am
Hi Banal
Thanks for this. I knew it must be something along these lines but the combinations I had tried just didn't work
Cheers
MM
| 547 Views | ||
|
Page:
1
|
Go to Top |

