Ben Doktriçindei iki kullanıcı arasında e arkadaş ilişki temsil etmek istiyveyaum. Ben ilişki oluşturmak mümkün duyuyveyaum, ama bunu silmek içiçinde en iyi yolu nedir bilmiyveyaum.
Ben şu şema var:
User:
columns:
name: striçindeg(255)
relations:
Friends:
class: User
local: user1
fveyaeign: user2
refClass: FriendReference
equal: true
FriendReference:
columns:
user1:
type: içindeteger
primary: true
user2:
type: içindeteger
primary: true
İşte relationsship oluşturmak nasıl:
$user1 = new User();
$user2 = new User();
$user1->Friends[] = $user2;
Bu mükemmel çalışır.
mysql> select * from friend_reference;
+-------+-------+
| user1 | user2 |
+-------+-------+
| 4 | 5 |
+-------+-------+
1 row içinde set (0.01 sec)
Şimdi ne iki biriçindecil anahtarlar 4 ve ilişkiçindeiçinde 5 silmek varsa ilişkiyi kaldırmak içiçinde en iyi yolu nedir? I could
- Kimliği 4 ile nesneyi alıp
$user->Friends
yiçindeeleme ve ardındanunliçindek
bu ilişkiyi silmek içiçinde kullanabilirsiçindeiz. Aşağıdaki sveyaguyu yazın
$query = Doctriçindee_Query::create() ->delete('FriendReference') ->nerede('(user1=4 AND user2=5) OR (user2=4 AND user1=5)') ->execute();
Ben iki seçenek zarif ne ölçülebilir ne düşünüyveyaum.