Работя върху приложението Rails 3.2 + AngularJS и поставих целия си angularJS код под релсов маршрут, наречен "api_path" (EG: / api #)
При създаването на връзка към CRUD функции като "show" в моя AngularJS шаблон правя нещо като следното;
<td><a href="/api#/costings/{{costing.id}}">Show</td>
Моят шаблон AngularJS се намира в тръбопровода за активи и се нарича show.html.erb. Знам, че компилирането на erb правилно, както мога да направя <% = 2 + 2%> и това работи.
Имам метод в моя файл application_helper.rb така;
def link_to_api(title, path)
link_to title, api_path + "#" + path
end
Ако се опитам да използвам това в моя шаблон на AngularJS, получавам грешката:
NoMethodError at /costings/index.html.erb
=========================================
> undefined method `link_to_api" for #<#<Class:0x007f4e8f550340>:0x007f4e9391ab20>
(in app/assets/templates/costings/index.html.erb)
app/assets/templates/costings/index.html.erb, line 8
Ето какво опитах в шаблона
<td><%= link_to_api("Show", "costings/{{costing.id}}") %></td>
Отговори:
0 за отговор № 1- Не мисля, че е добра идея да се използва помощник в AngularJS.
- Шаблонът в
assets/*
не мога да споделяapplicationHelper
обхват, така че да не може да направи това. - Ако трябва, опитайте да използвате erb в
views/*
и тя трябва да работи.