Yii Framework Forum: [ERLEDIGT] - Nicht nachvollziehbare CDbException - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

[ERLEDIGT] - Nicht nachvollziehbare CDbException Rate Topic: -----

#1 User is offline   yii 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 440
  • Joined: 25-July 09

Posted 30 September 2009 - 10:05 AM

Ich verstehe nicht warum er die Spalte nicht kennt.
Fehlermeldung
CDbException
Description

CDbCommand failed to execute the SQL statement: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'drivers.id' in 'where clause'





$x = drivers::model()->tableSchema->getColumnNames();

Liefert mir [0] => id und [1] => baseform




Mein Aufruf
	public function driversCars( $baseform )
	{
		return Drivers::model()->with(array('cars'))->find('drivers.id=?', array( $baseform ) );		
	}

Meine Fragen stelle ich öffentlich und baue somit eine Wissensdatenbank für andere auf!
0

#2 User is offline   p_m 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 2
  • Joined: 02-October 09

Posted 02 October 2009 - 04:00 AM

View Postyii, on 30 September 2009 - 10:05 AM, said:

Mein Aufruf
	public function driversCars( $baseform )
	{
		return Drivers::model()->with(array('cars'))->find('drivers.id=?', array( $baseform ) );		
	}



Heißt die Tabelle in der Datenbank 'drivers'?
Eigentlich sollte es auch wie folgt klappen:
Drivers::model()->with('cars')->find('id=?', array( $baseform ));

0

#3 User is offline   Mike 

  • Elite Member
  • PipPipPipPipPip
  • Yii
  • Group: Members
  • Posts: 3,016
  • Joined: 06-October 08
  • Location:Upper Palatinate

Posted 02 October 2009 - 11:54 AM

Was ist baseform? Evtl. wäre findByPk() einfacher...
0

#4 User is offline   yii 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 440
  • Joined: 25-July 09

Posted 03 October 2009 - 08:52 AM

Habe den Fehler soweit isoliert. Der Fehler lag in der relations-Methode, wie warum weshalb ist mir noch nicht klar.
Meine Fragen stelle ich öffentlich und baue somit eine Wissensdatenbank für andere auf!
0

#5 User is offline   Dave 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 187
  • Joined: 09-October 08

Posted 06 October 2009 - 08:34 AM

Tabellenname darfst du nicht direkt angeben, da sie im query anders bezeichnet werden. Wenn das AR zb bei einem join "drivers as t1" macht, kannst du in diesem SELECT nicht mehr 'drivers' verwenden.

Für eine Spalte aus der Stammtabelle kannst du einfach den Spaltennamen benutzen, für die relation benutzt du einen alias oder überlässt yii die tabellenbezeichnung in dem du ??.<spaltenname> angibst.
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users