2010-09-07 2 views
12

Ich verwende Rails 3 und festgestellt, dass, wenn ich hinzufügen: remote =>: true, wird das Tag die Daten-Remote = True-Attribut hinzugefügt. Aber ich kann keine Möglichkeit finden, dem urlhelper benutzerdefinierte Datenattribute hinzuzufügen. Im Folgenden wird nicht funktionieren:Wie URLhelper zu verwenden Schienen 3 benutzerdefinierte Daten-Attribut

<%= link_to projects_path, :history => "new"%> 
<%= link_to projects_path, :data-history => "new"%> #this throws an error 
<%= link_to projects_path, :data_history => "new"%> 

Was ich erzeugen will, ist: Neues Projekt

anyone?

Antwort

27

Was:

<%= link_to 'New Project', new_project_path, 'data-history' => 'new' %> 

(http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to)

+0

Hey Schlitten, vielen Dank für die Beantwortung. Ich habe das versucht, es gibt mir New Project sehen, dass die Geschichte = "neu", es ist da, aber nicht mit Daten-previx. Weißt du, ob es eine Möglichkeit gibt, ein Datenpräfix hinzuzufügen? –

+0

Ich habe meine Antwort bearbeitet, es sollte jetzt funktionieren :) Der Fehler war, dass Sie nicht "-" in Symbolen verwenden können, Sie müssen es als Literal schreiben. – sled

+0

Aha, hab es! Vielen Dank. Fall geschlossen –

10

Dies ist eine elegante Lösung:

<%= link_to "foo", foo_path, data: { foo: "bar" } %>