2013-07-24 46 views
0

我想爲Yii使用ipvalidator擴展名,並按照/protected/extensions/的說明安裝它。然後,我添加了以下規則來我的模型:IPValidator擴展名:路徑無效

array('ipAddress', 'application.extensions.ipvalidator.IPValidator', 'version' => 'v4'),` 

現在我收到以下錯誤:

Alias "application.extensions.ipvalidator.IPValidator" is invalid. Make sure it points to an existing PHP file.` 

有什麼我做錯了嗎?

+0

你確定文件夾的cAsE是一樣的嗎?不能在這裏想到其他任何錯誤。路徑應該是'protected/extensions/ipvalidator /',這個文件夾應該包含文件'IPValidator.php',就是它。它與這個特定的擴展無關,Yii無法找到'IPValidator'的路徑。你可以嘗試'var_dump(realpath(Yii :: getPathOfAlias('')));' – 2013-07-24 17:36:56

+0

@PeterM我試着做var_dump並得到如下路徑:'/ var/www/inventory/web/inventory /保護/擴展/ ipvalidator'。這是正確的道路。我不明白爲什麼它不起作用。 – ComputerLocus

回答

0
array('ip', 'match', 'pattern'=>'/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/','message'=>'IP not valid') 

其實它的所有延伸。而你的問題是錯誤的道路。

+0

路徑有什麼問題,擴展有什麼問題? – ComputerLocus

+0

確保它指向現有的PHP文件。 - 它不會在您提供的路徑中看到IPValidator.php。而對於擴展 - 它可以在規則中重寫爲1行,這是我給你的。它有點沒用。 – ineersa

+0

那麼問題是,我正在尋找檢查IPV4或IPV6取決於地址的樣子。使用擴展頁面上的評論代碼之一,我可以修改擴展來執行此操作。除此之外,如果您查看評論,路徑似乎是正確的,但不起作用。 – ComputerLocus