7
我有一個連接表如何使用連接表創建多模型tag_cloud?
create_table "combine_tags", force: true do |t|
t.integer "user_id"
t.integer "habit_id"
t.integer "valuation_id"
t.integer "goal_id"
t.integer "quantified_id"
end
,其目的是使多個車型tag_cloud工作。我把這個在application_controller
def tag_cloud
@tags = CombineTag.tag_counts_on(:tags)
end
我tag_cloud看起來是這樣的:
<% tag_cloud(@tags, %w(css1 css2 css3 css4)) do |tag, css_class| %>
<%= link_to tag.name, tag_path(tag), :class => css_class %>
<% end %>
# or this depending on which works:
<% tag_cloud CombineTag.tag_counts, %w[s m l] do |tag, css_class| %>
<%= link_to tag.name, tag_path(tag.name), class: css_class %>
<% end %>
我在_form所有型號的這一行:<%= f.text_field :tag_list %>
combine_tags_helper
種module CombineTagsHelper
include ActsAsTaggableOn::TagsHelper
end
模式
class CombineTag < ActiveRecord::Base
belongs_to :habit
belongs_to :goal
belongs_to :quantified
belongs_to :valuation
belongs_to :user
acts_as_taggable
end
class Habit < ActiveRecord::Base # Same goes for other models
has_many :combine_tags
acts_as_taggable
end
請讓我知道如果你需要進一步的解釋或code幫你幫我:)
你能告訴我簡而言之,你正在尋找的具體行爲是什麼? –
我知道如何使用一個模型創建tag_cloud,但是我無法使用多個模型,如果我在習慣和目標下創建了一個名爲'run'的標記,那麼tag_cloud將按比例表示標記的使用情況。這有助於@ArupRakshit嗎? –
你能簡單介紹一下用例嗎?爲什麼你需要_join_table_試圖理解? –