Ich habe eine funktionale Testsuite, die in einer Rails 2.2.2-Anwendung fehlschlägt. Die Ausnahme wird ausgelöst, und die damit verbundenen Linien sind unter:Private Methodenaufruf-Ausnahme für ActionView
ActionView::TemplateError: Attempt to call private method
On line #55 of app/views/wine/view.html.erb
53: <% for activity in @activities %>
54:
55: <% if activity.context == 'ItemComment' %>
56: <%= render :partial => 'item_comments/comment', :object => ItemComment.find(activity.context_id) %>
57: <% elsif activity.context == 'Review' %>
58: <%= render :partial => 'reviews/review', :object => Review.find(activity.context_id) %>
Dieser Code funktioniert wie in jeder anderen Umgebung neben Test erwartet; Außerdem ist activity
lediglich eine Instanz eines ActiveRecord namens Activity und context
ist eine varchar-Spalte innerhalb der activities
-Tabelle. Ich bin nicht Überlastung der Getter oder Setter für context
im Modell. Es ist ungefähr so Vanille, wie Sie bekommen können.
Ich bin verwirrt - ich habe noch nie zuvor gesehen, und alle Versuche, die Ursache zu isolieren haben sich als sinnlos erwiesen, wie Google-Suchen.
Ryan Bates ist endlich da .. Großartig! Freue mich wirklich auf weitere Antworten von Ihnen. Danke, Swanand – Swanand
große, großartige Antwort und scheint genau zu sein. ich dachte nicht einmal daran zu denken, dass shofa es verursacht hat. Ich werde versuchen, Kontext explizit im Modell zu definieren. Vielen Dank! – Kyle