2016-10-02 8 views
1

を作成する「制約」無視だから私はちょうど私のAPIを書き始め、そしてこのバグに出くわした:二回UNIQUE制約を持つユーザーを作成するにはLaravel NeoEloquentが上::コマンド

、そこ例外が返されますが、ノードまだ作成中です!

制約が上にある "ユーザー:access_tokenは" 財産、 と私は次のコードを使用しています:

try { 
    $userAttributes = [ 
     "email" => $request->email, 
     "access_token" => 'aaaa', 
     "facebook_id" => 'bbbb' 
    ]; 
    $user = new User($userAttributes); 
    $user->save(); 
}catch (Exception $e){} 

すべてのヘルプしてくださいましたか?

+0

Neo4jブラウザで ':schema'を実行して、制約が正しく作成されていることを確認できますか?問題はOGMを超えているようだ。ここ – Mulkave

+0

@Mulkaveスキーマコマンドから出力された:(一意性制約のために)ユーザ(電子メール)オンライン ON:ON インデックスユーザ(一意性制約のため)(access_tokenは)ONLINE 制約ON(ユーザ:ユーザー) ASSERT user.access_token IS UNIQUE ON(ユーザー:ユーザー)ASSERT user.email IS UNIQUE –

答えて

1

この問題は、underlying driverがCypherクエリを実行する代わりにREST APIを使用していることが原因です。回避策として(この回答時点で)異なるドライバを使用するNeoEloquentブランチ1.5-devがあり、それがデータベースに対してCypherを実行するために使用されます。このブランチはまだ開発中ですが、現在完全に下位互換性があります。

インストールするには、dev-1.5-devcomposer.jsonファイルに追加し、composer update vinelab/neoeloquentを実行します。

関連する問題