Użyłem klejnotu predictor. I zainicjowaniu dzia rekomendacji w initializers/predictor.rb
:Railsy - jak ustawić globalne zmienne instancji w inicjalizatorach?
require 'course_recommender'
recommender = CourseRecommender.new
# Add records to the recommender.
recommender.add_to_matrix!(:topics, "topic-1", "course-1")
recommender.add_to_matrix!(:topics, "topic-2", "course-1")
recommender.add_to_matrix!(:topics, "topic-1", "course-2")
A potem chciałem użyć dzia rekomendacji w CourseController tak:
class CourseController < ApplicationController
def show
# I would like to access the recommender here.
similiar_courses = recommender.similarities_for("course-1")
end
end
Jak mogę ustawić recommender
jako zmienna kontrolera aplikacji, więc mogłem dostęp to w kontrolerach?
Właśnie w celu wyjaśnienia, kod powinien iść w sterowniku, a * nie * w inicjatora. Możesz także rozważyć utworzenie filtra, jeśli jest on wymagany tylko w przypadku niektórych żądań. – zetetic
Dobrze. Ale myślę, że bardziej sensowne byłoby umieszczenie kodu w inicjatorze. Dzięki i tak. –