Ich habe ein Modell namens Oglas
mit dem ich Zeilen in der Tabelle erstellen. Es erzeugt einen eindeutigen Slug für diese Reihe, aber wenn ich diese Reihe aktualisiere, erzeugt es einen neuen Slug. Wenn also jemand einen Beitrag teilt und dann bearbeitet, existiert dieser freigegebene Beitrag nicht mehr, weil der Slug geändert wurde.Slug on Update nicht ändern (In Laravel Model)
Hier Code Oglas
:
class Oglas extends Model
{
protected $table = "oglasi";
protected $guarded = ['id'];
public function uniqueSlug($title) {
$slug = str_slug($title);
$exists = Oglas::where('slug', $slug)->count();
if($exists > 0)
$slug .= "-" . rand(11111, 99999);
return $slug;
}
public function setNazivAttribute($value) // In table i have "naziv" column
{
$this->attributes['slug'] = $this->uniqueSlug($value); // I do not want this to fire if post is edited.
$this->attributes['naziv'] = $value;
}
}
Fassen wir zusammen: Wenn neue daß der Körper Schaffung Post Feuer erzeugt, bei der Aktualisierung (Bearbeitung) nicht ausgelöst, nicht Slug ändern.
was Ihr Ansatz Modell zu erstellen und zu aktualisieren. Ich meine den Code Ihres Controllers. Kannst du uns zeigen? – huuuk