Aar*_*n Z 3 ruby-on-rails session-cookies impressions impressionist ruby-on-rails-6
我已经设置了印象派宝石。它一直工作正常,正在更新展示次数,但在尝试获取 Films#Show 页面时突然收到以下错误。
\n\n\n“60cb104e4befe185a8b81aac9a2c5e3c”的未定义方法“cookie_value\”:字符串
\n
似乎与 session_hash 有关,但不知道如何解决这个问题。
\n有人有什么想法吗?
\n这是我的电影模型:
\n class Film < ApplicationRecord\n\n\n acts_as_votable\n is_impressionable\n\n mount_uploader :cover, ImageUploader\n mount_uploader :video, VideoUploader\n mount_uploader :trailer, VideoUploader\n\n\n\n def score\n self.get_upvotes.size - self.get_downvotes.size\n end\n\n extend FriendlyId\n friendly_id :title, use: :slugged\n\n # one film has many reviews\n has_many :reviews, dependent: :destroy\n\n validates :title, presence: true\n validates :author, presence: true\n validates :cover, presence: true\n validates :description, presence: true\n\nend\nRun Code Online (Sandbox Code Playgroud)\n电影放映页面
\n<%= render "shared/ticker" %>\n\n\n\n\n<div class="back-to-films">\n <%= link_to films_path do %>\n <span><%= image_tag "BackArrow1.svg" %> </span><h3 class="back-to-gallery">Back to film gallery</h3>\n <% end %>\n</div>\n\n\n\n<section class="film-show-grid">\n\n <div class="film-show-img" onclick="toggle();">\n <%= image_tag @film.cover.show.url %>\n </div>\n\n <div class="film-show-info">\n <span><% if @film.is_top_pick %>\n <%= image_tag "is_featured.svg", :class => "top-pick-show" %>\n <% end %></span>\n\n <span class="liking-target">\n <%= link_to like_film_path(@film), class: "upvoted {liked_or_not}", method: :put, remote: :true do %>\n <%= image_tag "Polygon2.svg", :class => "polygon" %>\n <% end %>\n <span class="like_count">\n <%= @film.get_likes.size %>\n </span>\n </span>\n\n <span class="views">\n <%= image_tag "view.svg", :class => "eyeball" %>\n <span class="impressions"><%= @film.impressionist_count(:filter=>:ip_address) %></span>\n </span>\n\n\n\n\n <div class="">\n <h2 class="film-title"><%= @film.title %></h2>\n <h6 class="film-author"><%= @film.author %></h6> <span><%= @film.description %></span>\n <p class="film-description"><%= @film.description_body %></p>\n </div>\n <div class="play-button" onclick="toggle();">\n <span> Play </span> <%= image_tag "play.svg", :class => "play-symbol" %>\n </div>\n <div class="preview-button" onclick="toggleTrailer();">\n Trailer\n </div>\n <%= link_to film_reviews_path(@film) do %>\n <div class="cafe-talk-button">\n Caf\xc3\xa9 talk\n </div>\n <% end %>\nRun Code Online (Sandbox Code Playgroud)\n和我的完整堆栈跟踪
\nimpressionist (2.0.0) app/controllers/impressionist_controller.rb:143:in `session_hash\'\nimpressionist (2.0.0) app/controllers/impressionist_controller.rb:60:in `associative_create_statement\'\nimpressionist (2.0.0) app/controllers/impressionist_controller.rb:27:in `impressionist\'\napp/controllers/films_controller.rb:28:in `show\'\nactionpack (6.0.3.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action\'\nactionpack (6.0.3.2) lib/abstract_controller/base.rb:195:in `process_action\'\nactionpack (6.0.3.2) lib/action_controller/metal/rendering.rb:30:in `process_action\'\nactionpack (6.0.3.2) lib/abstract_controller/callbacks.rb:42:in `block in process_action\'\nactivesupport (6.0.3.2) lib/active_support/callbacks.rb:135:in `run_callbacks\'\nactionpack (6.0.3.2) lib/abstract_controller/callbacks.rb:41:in `process_action\'\nactionpack (6.0.3.2) lib/action_controller/metal/rescue.rb:22:in `process_action\'\nactionpack (6.0.3.2) lib/action_controller/metal/instrumentation.rb:33:in `block in process_action\'\nactivesupport (6.0.3.2) lib/active_support/notifications.rb:180:in `block in instrument\'\nactivesupport (6.0.3.2) lib/active_support/notifications/instrumenter.rb:24:in `instrument\'\nactivesupport (6.0.3.2) lib/active_support/notifications.rb:180:in `instrument\'\nactionpack (6.0.3.2) lib/action_controller/metal/instrumentation.rb:32:in `process_action\'\nactionpack (6.0.3.2) lib/action_controller/metal/params_wrapper.rb:245:in `process_action\'\nactiverecord (6.0.3.2) lib/active_record/railties/controller_runtime.rb:27:in `process_action\'\nactionpack (6.0.3.2) lib/abstract_controller/base.rb:136:in `process\'\nactionview (6.0.3.2) lib/action_view/rendering.rb:39:in `process\'\nactionpack (6.0.3.2) lib/action_controller/metal.rb:190:in `dispatch\'\nactionpack (6.0.3.2) lib/action_controller/metal.rb:254:in `dispatch\'\nactionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:50:in `dispatch\'\nactionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:33:in `serve\'\nactionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:49:in `block in serve\'\nactionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `each\'\nactionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `serve\'\nactionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:834:in `call\'\nwarden (1.2.8) lib/warden/manager.rb:36:in `block in call\'\nwarden (1.2.8) lib/warden/manager.rb:34:in `catch\'\nwarden (1.2.8) lib/warden/manager.rb:34:in `call\'\nrack (2.2.3) lib/rack/tempfile_reaper.rb:15:in `call\'\nrack (2.2.3) lib/rack/etag.rb:27:in `call\'\nrack (2.2.3) lib/rack/conditional_get.rb:27:in `call\'\nrack (2.2.3) lib/rack/head.rb:12:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/http/content_security_policy.rb:18:in `call\'\nrack (2.2.3) lib/rack/session/abstract/id.rb:266:in `context\'\nrack (2.2.3) lib/rack/session/abstract/id.rb:260:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/cookies.rb:648:in `call\'\nactiverecord (6.0.3.2) lib/active_record/migration.rb:567:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call\'\nactivesupport (6.0.3.2) lib/active_support/callbacks.rb:101:in `run_callbacks\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/callbacks.rb:26:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/executor.rb:14:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/actionable_exceptions.rb:17:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/debug_exceptions.rb:32:in `call\'\nweb-console (4.0.4) lib/web_console/middleware.rb:132:in `call_app\'\nweb-console (4.0.4) lib/web_console/middleware.rb:28:in `block in call\'\nweb-console (4.0.4) lib/web_console/middleware.rb:17:in `catch\'\nweb-console (4.0.4) lib/web_console/middleware.rb:17:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call\'\nrailties (6.0.3.2) lib/rails/rack/logger.rb:37:in `call_app\'\nrailties (6.0.3.2) lib/rails/rack/logger.rb:26:in `block in call\'\nactivesupport (6.0.3.2) lib/active_support/tagged_logging.rb:80:in `block in tagged\'\nactivesupport (6.0.3.2) lib/active_support/tagged_logging.rb:28:in `tagged\'\nactivesupport (6.0.3.2) lib/active_support/tagged_logging.rb:80:in `tagged\'\nrailties (6.0.3.2) lib/rails/rack/logger.rb:26:in `call\'\nsprockets-rails (3.2.1) lib/sprockets/rails/quiet_assets.rb:13:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/remote_ip.rb:81:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/request_id.rb:27:in `call\'\nrack (2.2.3) lib/rack/method_override.rb:24:in `call\'\nrack (2.2.3) lib/rack/runtime.rb:22:in `call\'\nactivesupport (6.0.3.2) lib/active_support/cache/strategy/local_cache_middleware.rb:29:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/executor.rb:14:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/static.rb:126:in `call\'\nrack (2.2.3) lib/rack/sendfile.rb:110:in `call\'\nactionpack (6.0.3.2) lib/action_dispatch/middleware/host_authorization.rb:82:in `call\'\nwebpacker (4.2.2) lib/webpacker/dev_server_proxy.rb:23:in `perform_request\'\nrack-proxy (0.6.5) lib/rack/proxy.rb:57:in `call\'\nrailties (6.0.3.2) lib/rails/engine.rb:527:in `call\'\npuma (4.3.5) lib/puma/configuration.rb:228:in `call\'\npuma (4.3.5) lib/puma/server.rb:713:in `handle_request\'\npuma (4.3.5) lib/puma/server.rb:472:in `process_client\'\npuma (4.3.5) lib/puma/server.rb:328:in `block in run\'\npuma (4.3.5) lib/puma/thread_pool.rb:134:in `block in spawn_thread\'\nRun Code Online (Sandbox Code Playgroud)\n
我将使用impressiongem 的旧版 Rails 应用程序更新到版本 6,并遇到了相同的异常。impression我通过在以下位置指定 gem 的特定提交来解决这个问题Gemfile:
gem 'impressionist',
git: 'git@github.com:charlotte-ruby/impressionist.git',
ref: '46a582ff8cd3496da64f174b30b91f9d97e86643'
Run Code Online (Sandbox Code Playgroud)
原因是该异常的修复不在其最新版本(2.0.0)中,而是在其 master 分支中。
| 归档时间: |
|
| 查看次数: |
876 次 |
| 最近记录: |