-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi Gerrit,
ein autoincrement auf die id zu setzen ist prinzipiell keien schlechte
Idee. Ich habe meist Probleme, wenn ich es vergesse.
Calamity Jane
Am 02.03.2013 14:32, schrieb gerritkpunkt:
> Ich habe nun nurnoch ein kleines Problem. Wenn ich deleteAll() ausf�hre mit
> dependent=true in den Beziehungen versucht er ein SELECT auf die id eines
> Objekts auszuf�hren. Kann ich das auch �ndern oder brauch dann meine
> Beziehungstabelle eine AutoIncrement id?
>
> Gru�
> Gerrit K.
>
> Am Samstag, 2. M�rz 2013 10:35:03 UTC+1 schrieb gerritkpunkt:
>>
>> Vielen dank euch!
>>
>> Mithilfe von Mathias' Tipp konnte ich alle Probleme beseitigen zudem
>> erm�glicht es mir Informationen �ber die Mitgliedschaft zu speichern
>> (Rolle, Seit wann etc.)
>>
>> Nochmals danke!
>>
>> Gru�,
>> Gerrit K.
>>
>> Am Freitag, 1. M�rz 2013 14:44:17 UTC+1 schrieb tinytiger:
>>>
>>> @Mathias' Das w�re dann eine "Has Many Through" Beziehung. Kann man auch
>>> machen, ist in Vielerlei Hinsicht praktischer aber auch nicht unbedingt
>>> n�tig.
>>> Gru�,
>>>> Ich w�rde auch sagen dass du die Verkn�pfungen falsch gesetzt hast. Den
>>>> Join w�rde ich da gar nicht setzen:
>>>>
>>>> Users hasMany usersToProjects
>>>> Projects hasMany UsersToProjects
>>>> UsersToProjects belongsTo Users, Projects
>>>>
>>>> So w�rde ich das �ber 3 Tabellen l�sen.
>>>>
>>>> Gru�
>>>> M
>>>>
>>>> - mobil gesendet -
>>>>
>>>> Am 01.03.2013 um 13:46 schrieb Mark Kessler <
kessle...@gmail.com>:
>>>>
>>>> Hallo,
>>>>
>>>> zu deinen Fragen:
>>>>
>>>> a) Also irgend etwas muss mit deinem Setup nicht stimmen. Mir is nur
>>>> eine Sache aufgefallen: Deine Join Tabelle m�sste eigentlich
>>>> "projects_uses" heissen (alphabetische Reihenfolge). Das kann man zwar
>>>> �berschreiben so wie du das gemacht hast aber man sollte sich m�glichst an
>>>> die Konventionen halten solange es keinen guten Grund gibt der dagegen
>>>> spricht (was selten der Fall ist). Stichwort: "Convetion over
>>>> Configuration". Das sollte aber eigentlich nicht das Problem sein.
>>>> Kannst du noch einmal deine kompletten Setup der Assoziationen posten?
>>>> vom Project und User Model? Und auch einen SQL Dump der Struktur der
>>>> projects und users Tabelle?
>>>> b) Gibt es meines Wissens nicht. Es wird normalerweise so gel�st dass
>>>> Alle Assoziationen gel�scht und dann nur die noch existierenden neu
>>>> erstellt werden. Schau dir mal an wie das in Views und Controllers gemacht
>>>> wird die von Cake �ber den "bake" Befehl erstellt werden. Direkte SQL
>>>> Queries sind immer eine schlechte Idee.
>>>>
>>>> Gru�,
>>>> Mark
>>>>
>>>> 2013/3/1 <
gerrit...@gmail.com>
>>>>
>>>>> Hallo Leute,
>>>>>
>>>>> ich habe vor kurzem mit CakePHP angefangen und bin momentan dabei ein
>>>>> kleines WebProjekt zu entwickeln. Dabei habe ich jetzt allerdings ein paar
>>>>> Probleme mit dem Speichern/L�schen von Daten bei einer HABTM Beziehung.
>>>>>
>>>>> a) Wenn ich ein Projekt l�sche werden alle Beziehungen zu Usern
>>>>> gel�scht, die in diesem Projekt aktiv waren, auch die, die nichts mit dem
>>>>> gel�schten Projekt zu tun haben.
>>>>> Bsp. Projekt "Braunschweig" hat die Benutzer "dennis" und "ingo".
>>>>> "ingo" ist weiterhin in dem Projekt "develop-first" aktiv. Wenn ich nun das
>>>>> Projekt "Braunschweig" l�sche werden einerseits die Beziehungen zu diesem
>>>>> Projekt gel�scht, so wie gewollt. Andererseits wird aber ingo auch aus dem
>>>>> Projekt "develop-first" entfernt.
>>>>>
>>>>> Beziehung
>>>>> public $hasAndBelongsToMany = array <
http://www.php.net/array>(
>>>>> 'User' => array <
http://www.php.net/array>(
>>>>> 'className' => 'User',
>>>>> 'order' => 'User.username ASC',
>>>>> 'joinTable' => 'users_projects',
>>>>> 'foreignKey' => 'project_id',
>>>>> 'associationForeignKey' => 'user_id'));
>>>>>
>>>>> L�schen-Methode
>>>>> if($this->Project->delete($id)) {
>>>>> $this->Session->setFlash(__('Projekt gel�scht.'));
>>>>> $this->redirect(array <
http://www.php.net/array>('action' =>
>>>>> 'projectlist'));
>>>>> }
>>>>>
>>>>> $this->Session->setFlash(__('Projekt konnte nicht gel�scht werden.'));
>>>>> $this->redirect(array <
http://www.php.net/array>('action' =>
>>>>> 'projectlist'));
>>>>>
>>>>> b) Wenn ich nur eine Beziehung l�schen will aber ein Projekt / Benutzer
>>>>> behalten will habe ich momentan einen manuellen SQL-Query in Benutzung.
>>>>> Bietet CakePHP dort eine einfache M�glichkeit? Bei mir wurden immer
>>>>> Benutzer und/oder Projekt mitgel�scht.
>>>>>
>>>>> Vielen dank im Voraus!
>>>>>
>>>>> Gru�
>>>>> gerritkpunkt
>>>>>
>>>>> --
>>>>> --
>>>>> Bitte bei Fragen immer auch die aktuell verwendete cakePHP Version
>>>>> angeben und
>>>>> wenn m�glich auch das verwendete Betriebssystem und die PHP Version.
>>>>> Danke.
>>>>> Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google
>>>>> Groups-Gruppe "CakePHP-de f�r deutsche CakePHP Entwickler".
>>>>> F�r das Erstellen von Beitr�gen in dieser Gruppe senden Sie eine E-Mail
>>>>> CakePHP-de f�r deutsche CakePHP Entwickler beigetreten sind.
>>>>> Um Ihr Abonnement f�r diese Gruppe zu beenden und keine E-Mails mehr
>>>> wenn m�glich auch das verwendete Betriebssystem und die PHP Version.
>>>> Danke.
>>>> Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google
>>>> Groups-Gruppe "CakePHP-de f�r deutsche CakePHP Entwickler".
>>>> F�r das Erstellen von Beitr�gen in dieser Gruppe senden Sie eine E-Mail
>>>> CakePHP-de f�r deutsche CakePHP Entwickler beigetreten sind.
>>>> Um Ihr Abonnement f�r diese Gruppe zu beenden und keine E-Mails mehr von
>>>> wenn m�glich auch das verwendete Betriebssystem und die PHP Version.
>>>> Danke.
>>>> Sie erhalten diese Nachricht, weil Sie Mitglied sind von Google
>>>> Groups-Gruppe "CakePHP-de f�r deutsche CakePHP Entwickler".
>>>> F�r das Erstellen von Beitr�gen in dieser Gruppe senden Sie eine E-Mail
>>>> CakePHP-de f�r deutsche CakePHP Entwickler beigetreten sind.
>>>> Um Ihr Abonnement f�r diese Gruppe zu beenden und keine E-Mails mehr von
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
iEYEARECAAYFAlEyCxMACgkQbOdiIJzHNKG2ZQCgovHUHKEM6ZqtWY4OYgg87Zk3
dKIAn3n80r7+QJmBr10bT0I6PHyn/jrd
=eSWe
-----END PGP SIGNATURE-----