computed field nicht neu berechnen
Eingetragen von fvoss (38)
am 01.10.2008 - 12:06 Uhr in
am 01.10.2008 - 12:06 Uhr in
ich möchte ein computed field nur ein mal bei er erstellung erzeugen!
bei späteren änderungen bearbeiten soll dieses feld immer unverändert bleiben!
laut doku sollte es so klappen:
if (!empty($node_field[0]['value']))
{
return $node_field[0]['value'];
}
else {
$node_field[0]['value'] = time();
}
klappt aber nicht!!! warum???
- Anmelden oder Registrieren um Kommentare zu schreiben
Warum verwendest Du ein Computed Field?
am 01.10.2008 - 13:49 Uhr
ich möchte ein computed field nur ein mal bei er erstellung erzeugen!
Rein sprachlogisch:
Ein Computed Field wird nicht bei der Erstellung einer Node erzeugt. Bestenfals wird es mit Inhalt gefuellt.
Erzeugt (also definiert) wird es mit CCK beim konfigurieren eines Inhaltstyp.
Zu Deinem Problem:
Warum verwendest Du ein Computed Field?
Was willst Du damit erreichen bzw. was fuer ein Inhalt soll in diesem (Computed) Feld beim Erstellen einer Node eingetragen werden?
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Da geht noch was.
Rein sprachlogisch hast Du wie immer Recht!
am 01.10.2008 - 14:16 Uhr
Rein sprachlogisch:
Ein Computed Field wird nicht bei der Erstellung einer Node erzeugt. Bestenfals wird es mit Inhalt gefuellt.
Erzeugt (also definiert) wird es mit CCK beim konfigurieren eines Inhaltstyp.
da hast Du wie immer Recht!
Warum verwendest Du ein Computed Field?
weil etwas berechnet werden soll!
ich habe aber die Lösung just in diesem Augenblick gefunden
if (!$node->nid) node_save($node);
$select ="SELECT field_MEINWERT_value from content_type_MEINTYPE WHERE nid = ".$node->nid;
$dummy = db_result(db_query($select));
if (!empty($dummy))
{
$node_field[0]['value']=$dummy;
}
else
{
$node_field[0]['value'] = WERTDREMELN ;
}
Danke ;-)