Я хочу, чтобы у каждой категории был автоматически созданный топик, аналогичный стандартному «О категории [название категории]» в начале каждой категории. Можно ли подключить обработчик события after_create для Category? Я не могу найти ни одного плагина, который делал бы что-то подобное, и даже не знаю, как вставить запись топика.
Думаю, для этого вам потребуется использовать API Discourse?
justin
(Justin DiRose)
01.Февраль.2021 03:21:44
3
Существует событие DiscourseEvent с именем category_created.
after_destroy :reset_topic_ids_cache
after_destroy :publish_category_deletion
after_destroy :remove_site_settings
after_create :delete_category_permalink
after_update :rename_category_definition, if: :saved_change_to_name?
after_update :create_category_permalink, if: :saved_change_to_slug?
after_commit :trigger_category_created_event, on: :create
after_commit :trigger_category_updated_event, on: :update
after_commit :trigger_category_destroyed_event, on: :destroy
after_save_commit :index_search
belongs_to :parent_category, class_name: 'Category'
has_many :subcategories, class_name: 'Category', foreign_key: 'parent_category_id'
has_many :category_tags, dependent: :destroy
has_many :tags, through: :category_tags
Вам нужно подключиться к этому событию, следуя этому примеру:
Надеюсь, это поможет!
Это именно то, что мне нужно! Я просто ЗНАЛ , что должно быть какое-то событие, которое я могу поймать, но не мог его найти. Большое спасибо!