Rails 4.0 param fehlt oder der Wert leer ist

Ich Gelegenheit haben, ein Modell, das eine verschachtelte Ressource Link. In meinem Ausblick/Chancen/Karte Seite wenn ich auf "Zerstören" für einen der links bekomme ich den Fehler:

param fehlt oder der Wert leer ist: link

Den code-snippet ist es beschwerte sich über:

def link_params
     params.require(:link).permit(:description, :link_url)
end

Hier ist meine zerstören code:

def destroy
  @opportunity = Opportunity.find(params[:opportunity_id])
  @link = @opportunity.links.find(link_params)
  @link.destroy
  respond_to do |format|
    format.html { redirect_to links_url, notice: 'Link was successfully destroyed.' }
    format.json { head :no_content }
end
Zeigen Sie den code für Ihre zerstören link.
die params werden normalerweise nur verwendet, um den update-Attribute der Modellelemente (außer params[:id] um das Objekt zu suchen). In der destroy-Aktionen gibt es normalerweise keine Objekt-Attribute, die vom client gesendet, also warum verwenden Sie link_params in Ihr zerstören-Aktion?
ich habe aktualisiert mit meinem zerstören code @gwcoffey
denn ohne ihn bekomme ich den Fehler undefined local variable oder Methode `links_url' @joni
bitte zeigen uns auch, wie die params-hash aussieht. Auch, in der Regel die params.require Methode wird nur verwendet, wenn eine rails-Modell wird aktualisiert, mit den params. Wenn Sie nur die Auswahl eines Wertes aus der hash für die Suche, die Sie nicht benötigen, können Sie einfach tun parmas[:link][:description]

InformationsquelleAutor Trung Tran | 2014-06-01

Schreibe einen Kommentar