मुझे और सेवाएं तालिका प्रदान करता है।लैरवेल 5: कैस्केड सॉफ्ट डिलीट
सेवा (ओं) एक प्रस्ताव का बच्चा है। अब तक मैंने प्रस्ताव को नरम हटाने के लिए कार्यक्षमता स्थापित की है। मैं संलग्न सेवाओं को नरम कैसे हटाऊंगा?
प्रवासन ऑफर
Schema::create('offers', function(Blueprint $table)
{
$table->increments('id')->unsigned();
...
$table->timestamps();
$table->softDeletes();
});
प्रवासन सेवा
Schema::create('services', function(Blueprint $table)
{
$table->increments('id');
$table->integer('offer_id')->unsigned();
...
$table->timestamps();
$table->softDeletes();
});
Schema::table('services', function($table)
{
$table->foreign('offer_id')
->references('id')
->on('offers');
});
मॉडल ऑफर
use SoftDeletes;
protected $dates = ['deleted_at'];
public function services() {
return $this->hasMany('App\Service');
}
मॉडल सेवा
public function offer() {
return $this->belongsTo('App\Offer');
}
012: यहाँ मेरी कोड है
हटाएँ विधि
public function destroy($id)
{
$offer = Offer::find($id);
$offer->delete();
}
सभी मदद के लिए धन्यवाद।
लेकिन यह समाधान काम नहीं करता है अगर सेवाओं में एफके है ... बच्चे के मॉडल में हटाना ट्रिगर नहीं किया गया है –
मैं दीवार के खिलाफ अपने सिर को टक्कर दे रहा हूं कि यह मेरे लिए क्यों काम नहीं करता .. पता चला क्योंकि यह इसलिए था क्वेरी को डिलीट कॉल करते समय यह 'हटाना' और 'हटाए गए' तरीकों को कॉल नहीं करता है। यहां कुछ और विवरण और उदाहरण हैं कि इसे कैसे काम करें: https: // github।कॉम/लार्वेल/ढांचे/मुद्दों/2536 # अंकन -74557441 –