2017-09-12 15 views
1

私はスカウトでLaravel 5.5を使用しています。更新インデックスalgolia

public function update(Request $request) 
{ 
    $user = Users::find(5); 
    $user->name = 'jean floriot'; 
    $user->update(); 
} 

しかし、それは決して:私はこのようなドキュメントを使用してalgoliaのインデックスと、私は一日のユーザーの名前を更新します

私の場合は
class Documents extends Model 
{ 
    use Searchable; 

    public function toSearchableArray() 
    { 
     $data = $this->toArray(); 

     // formatting relationship for algolia 

     $data['users'] = $this->types->toArray(); 
     $data['document_type'] = $this->typeDocuments->name; 
     return $data; 
    } 

    protected $fillable = array('name', 'description', 'document_type'); 

    public function types() { 
     return $this->belongsToMany('App\Users', 'document_rights', 'user_id', 'id'); 
    } 

    public function typeDocuments() { 
     return $this->belongsTo('App\Document_type', 'document_type'); 
    } 
} 

論文のドキュメントに関連付けられているユーザを、持っていますAlgoliaのインデックスでユーザーを変更します。任意のアイデアを進める方法?

答えて

5

私はそれにsearchable()メソッドを使うことができると信じています。

App\Documents::where('user_id', '=', $this->id)->searchable(); 

は、私が何かを逃した場合、私はそれが働いていた場合知っているか聞かせてください:$this->update()した後、あなたのような何かを取得します。

+0

問題は私のuser_idが別のテーブルにある –

+0

次に、ピボットテーブルを使用するようにクエリを適合させることができます:https://laracasts.com/discuss/channels/eloquent/laravel-eloquent-how-to-query-pivot -table –

+0

thanks;)が期待どおりに動作しているかどうかを確認します –

関連する問題