簡體   English   中英

Filterrific - 持久過濾器

[英]Filterrific - Persist Filter

我正在嘗試保留用戶設置的多個過濾器設置,以便每當重新加載頁面,或者如果用戶導航離開然后導航回其過濾頁面時,過濾器設置不會重置為默認值。 我發現了這個問題,要求與我目標相反,並推斷將 persistence_id 設置為 true 會保留過濾器,但是在將多個過濾器的 persistence_id 設置為 true 並在我的應用程序中導航之后,我發現過濾器不是堅持,而不是重置。

根據我對 filterrific 文檔的理解,persistence_id 設置將能夠啟用 session 持久性。 是否還有更多需要實現的 session 持久性?

Rails 和 Ruby 應用程序中使用的版本: Rails 版本 = 6.0.4.4 Ruby 版本 = 2.6.8p205

controller 中的示例實現:

    def filterrific_appointments
      initialize_filterrific(
        Appointment,
        params[:filterrific],
        select_options: {
          staff_member: User.staff.map { |p| [p.full_name, p.id] },
          state: State.order(:name).pluck(:name, :id),
          with_account: [["Account Created", true], ["No Account", false]],
        },
        default_filter_params: { staff_member: current_user.id, intake: true },
        persistence_id: true,
        available_filters: %i[
          staff_member
          state
          intake
          with_account
        ],
        sanitize_params: true,
      ) || return
    end 

相關約會 Model 中的示例實現:

filterrific(
    default_filter_params: { sorted_by: "start_time_asc" },
    available_filters: %i[
      sorted_by
      provider
      staff_member
      state
      appointment_type
      location
      start_time
      end_time
      with_account
    ],
  )

因此,在與同事合作后,我們發現persistence_id 不是在尋找真/假值,而是尋找與過濾器 session 相關聯的唯一字符串。 我假設這是 filterrific 如何在 cookies 中設置這些 session 過濾器,以便區分各種過濾器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM