2016-10-27 101 views
1

如果我想要一個雄辯的關係,例如與LIKE比較的雄辯關係

public function subscribed(){ 

    return $this->hasOne('App\Models\SuppressionList', 'email', 'email'); 

} 

這使得一個嚴格的相等比較,所以如果在主表中的電子郵件屬性爲[email protected]和外部表的email屬性是[email protected]。有什麼辦法可以創建一個鬆散的關係,以便它可以通過與=相對的LIKE比較器來加入記錄。

乾杯

回答

2

也許這不是我應該使更多的例子情況,但是,電子郵件,大多數供應商至少提供,往往不僅僅是大小寫不敏感了。他們通常也會忽略用戶名中的.,也許我忘記了其他內容。

在這樣的情況下,如果有兩個字段,display_email(用戶輸入的內容,如果表示很重要),以及canonical_email(用戶名中的郵件被刪除了句點,全部小寫等)通常是個好主意。這可以在連接大型表時節省一些CPU週期(而不是每次都進行轉換),並且幫助您處理每次輸入電子郵件的用戶都略有不同。