के आधार पर डिफ़ॉल्ट मॉडल मान सेट करना मैं हल नहीं कर सकता कि क्यों डिफ़ॉल्ट मान सेटिंग मेरे लिए काम नहीं करती है।परिदृश्य
class QueryController extends ActiveController
{
public $modelClass = 'app\models\Query';
public $createScenario = 'restCreate';
public $updateScenario = 'restUpdate';
मैं डिफ़ॉल्ट createAction
विधि ओवरराइड नहीं करें:
यहाँ मेरी नियंत्रक है।
मॉडल:
class Query extends ActiveRecord
{public function rules()
{
return [
[['userId', 'name', 'created', 'isOneTime', 'isArchived', 'settings', 'engine'], 'required'],
[['userId'], 'integer'],
[['name', 'settings', 'schedule'], 'string'],
[['created', 'lastUpdate'], 'safe'],
[['isOneTime', 'isArchived', 'isApi', 'valid'], 'boolean'],
[['state', 'engine'], 'string', 'max' => 160],
[['isApi'], 'default', 'value'=> false],
[['isApi'], 'default', 'value'=> true, 'on' => 'restCreate']
];
}
public function scenarios()
{
$scenarios = parent::scenarios();
$scenarios['restCreate'] = ['name', 'state', 'isApi', 'isOneTime', 'settings', 'schedule'];
$scenarios['restUpdate'] = ['name', 'state', 'isOneTime', 'settings', 'schedule' ];
return $scenarios;
}
जब मैं एक रेस्ट नियंत्रक के माध्यम से एक नई प्रविष्टि बनाने के लिए, यह isApi = true
डिफ़ॉल्ट रूप से स्थापित करना चाहिए, लेकिन यह इस तरह से काम नहीं करता। परिदृश्य के आधार पर मैं डिफ़ॉल्ट मॉडल मान कैसे निर्दिष्ट कर सकता हूं?
मॉडल नियम में डिफ़ॉल्ट मान लागू किया जाता है। मुझे नहीं लगता कि यह खेतों को prefills। –
@ck_arjun, ठीक है तो मैं यह फार्म के माध्यम से पोस्ट करते हैं और लगता है कि यह निर्धारित करना चाहिए एक '$ this-> 'ISAPI ='' मैं सही हूँ? –