Voglio verificare se il categoryid indicato è una categoria esistente. Ho provato diversi valori come attributo target, ma non riesco a farlo funzionare finora.Regole del modello Yii2, come usare un altro tavolo durante l'utilizzo?
Quando eseguo la query così com'è, restituisce il valore corretto per ciò che sto cercando di aggiungere.
public function rules()
{
return [
[['categoryid'], 'integer'],
['categoryid', 'exist', 'targetAttribute' => FaqCategory::findOne(['id=:id', ['id'=>'categoryid']])['id']],
[['question', 'answer'], 'required'],
[['answer'], 'string'],
[['question'], 'string', 'max' => 255]
];
}
- Aggiornamento
sono incappato in targetClass. Tuttavia questa volta ricevo la classe 'FaqCategory' non trovata. La classe si trova nello stesso spazio dei nomi.
['categoryid', 'exist', 'targetClass' => 'FaqCategory']
Questo mi ha aiutato a risolvere il problema! Ha pubblicato la risposta. Non sono sicuro di quale io sia più affezionato. Uno è migliore in termini di regolamenti di codice? – Wijnand