Skip to main content

Cakephp Model Attributes

useDbConfig:
The useDbConfig property is a string that specifies the name of the database connection to use to bind your model class to the related database table.

Example usage:
class Example extends AppModel {
    public $useDbConfig = 'alternate';
}

useTable:
The useTable property specifies the database table name.

class Example extends AppModel {
    public $useTable = false; // This model does not use a database table
}

Alternatively:
class Example extends AppModel {
    public $useTable = 'exmp'; // This model uses a database table 'exmp'
}

Order

The default ordering of data for any find operation. Possible values include:
$order = "field"

$order = "Model.field";

$order = "Model.field asc";

$order = "Model.field ASC";

$order = "Model.field DESC";

$order = array("Model.field" => "asc", "Model.field2" => "DESC");

virtualFields

Array of virtual fields this model has. Virtual fields are aliased SQL expressions. Fields added to this property will be read as other fields in a model but will not be saveable.

Example usage for MySQL:

public $virtualFields = array(
    'name' => "CONCAT(User.first_name, ' ', User.last_name)"
);


Use model without table
class ContactOperation extends AppModel {
    public $useTable = false;
//Define the schema within the class as shown:
public $_schema = array(
'name' => array(
'type' => 'string',
'length' => 200,
'null' => false,
),
'email' => array(
'type' => 'string',
'length' => 150,
'null' => false,
),
'category_id' => array(
'type' => 'integer',
'null' => false,
),
'message' => array(
'type' => 'text',
'null' => false,
),
);

public function getCategoriesList() {
// this could be a find 'list' from
// another model
return array(
1 => 'Sales',
2 => 'Support',
3 => 'Query',
);
}
}


In controller function use model like this.
$model = ClassRegistry::init('ContactOperation'); 
$categories = $model->getCategoriesList(); // Call function in model
$this->set('categories', $categories);

Comments

Popular posts from this blog

Generate XML file in Cakephp

Steps to Generate XML file using CakePHP: Step-1 Enable to parse xml extension in config route.php file.     Router::parseExtensions('xml'); Step-2 Add Request Handler Component to the Controller    var $components = array(‘RequestHandler’); Step-3 Add controller Action For XML Generation in Post Controller     function generateXMLFile()     {         if ($this->RequestHandler->isXml()) { // check request type             $this->layout = 'empty'; // create an empty layout in app/views/layouts/empty.ctp              }        }  Add header code in empty layout <?php header('Content-type: text/xml');?> <?php echo $this->Xml->header(); ?> <?php echo $content_for_layout; ?> Step-4 Set up View To generate XML Create xml folder inside Posts vi...

How To Create Shortcodes In WordPress

We can create own shortcode by using its predified hooks add_shortcode( 'hello-world', 'techsudhir_hello_world_shortcode' ); 1. Write the Shortcode Function Write a function with a unique name, which will execute the code you’d like the shortcode to trigger: function techsudhir_hello_world_shortcode() {    return 'Hello world!'; } Example: [hello-world] If we were to use this function normally, it would return Hello world! as a string 2. Shortcode function with parameters function techsudhir_hello_world_shortcode( $atts ) {    $a = shortcode_atts( array(       'name' => 'world'    ), $atts );    return 'Hello ' . $a['name'] . !'; } Example: [hello-world name="Sudhir"] You can also call shortcode function in PHP using do_shortcode function Example: do_shortcode('[hello-world]');

How to replace plain URLs with links

Here we will explain how to replace Urls with links from string Using PHP $string ='Rajiv Uttamchandani is an astrophysicist, human rights activist, and entrepreneur. Academy, a nonprofit organization dedicated to providing a robust technology-centered education program for refugee and displaced youth around the world.  CNN Interview - https://www.youtube.com/watch?v=EtTwGke6Jtg   CNN Interview - https://www.youtube.com/watch?v=g7pRTAppsCc&feature=youtu.be'; $string = preg_replace('@(https?://([-\w\.]+)+(:\d+)?(/([\w/_\.%-=#]*(\?\S+)?)?)?)@', '<a href="$1">$1</a>', $string); Using Javascript <script> function linkify(inputText) {     var replacedText, replacePattern1, replacePattern2, replacePattern3;     //URLs starting with http://, https://, or ftp://     replacePattern1 = /(\b(https?|ftp):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gim;     replacedText = inputT...