试图在这里找出一个体面的方法......
我有一个表单,根据用户是否在表单中选择下拉菜单,它会显示或隐藏其他一些表单字段。如果表单字段可见,我希望它们是必需的。如果它们不可见,我不希望它们被要求。
我试图找出一种在我的模型规则中处理这个问题的方法 - 我在我的模型规则()函数中尝试了这样的事情:
$requiredFields = 'cashAtClosing, offerPrice, closingDate, financingType,surveyDays,'.
'earnestMoney, escrowAgent, escrowAgentAddress, surveyProvider, surveyDays, titlePolicyPayment,'.
'titleObjectionDays, titleCompany, titleCompanyAddress, optionFee, optionDays, optionCredit';
if ($this->financingType == "THIRDPARTYFINANCE")
{
Yii::trace("Add Financing Type Rules");
$requiredFields .= ',creditApprovalRequired,creditApprovalDays,loan1Amount, loan1DueInFullYears, '.
'loan1InterestNotToExceed, loan1InterestNotToExceedYears, loan1OriginationNotToExceed';
}
else
{
$safeFields .= ',creditApprovalRequired,creditApprovalDays,loan1Amount, loan1DueInFullYears, '.
'loan1InterestNotToExceed, loan1InterestNotToExceedYears, loan1OriginationNotToExceed';
}
array_push($rulesArray, array($requiredFields, 'required'));
问题是似乎在填充模型之前调用了规则函数,因此在我的示例中 $this->financingType 始终为空,因此此代码无法正常工作。
这里有什么更好的方法?
谢谢。