私はカラムがIDのテーブルを持っています。私は同じ列のアクセサを作成したい。LaravelアクセサリーID欄
モデル。
protected $table = 'repair_category';
protected $fillable = ['ID,','Name','Active','Background_Color','Icon_File_Name','ListOrder'];
protected $primaryKey = 'ID';
は私が
public function getIDAttribute($value)
{
return Crypt::encrypt($value);
}
と
public function getIdAttribute($value)
{
return Crypt::encrypt($value);
}
しかし、その動作していないを試してみました。
誰でも、この問題を解決する方法をお勧めします。
ので、どのようなあなたの主キーがあり、あなたがあなたのモデルでどのように定義しないで[]属性は? –
データベースにはデザイン上の問題があると思います。プライマリキーは整数でなければならず、一意でなければなりません。暗号化されたコンテンツは衝突(同じハッシュを生成する2つの異なる要素)を生成する可能性があるため、これは一意の要素ではありません。 なぜ暗号化されたコンテンツに対して別の列を作成できないのですか? また、なぜIDを暗号化する必要がありますか? –
@MarcBrillault、テーブル行のPKをブラウザから完全に隠したいと思っています。私はテーブルからIDを暗号化したいので。私はIDにPK列を変更するときに結果を得ることができますが、私は列名を変更したくないです。 – Jishad