j127
7 أغسطس 2019، 8:48ص
1
هل يعرف أحد كيفية استعلام إشعارات الموظفين ملاحظات من قاعدة البيانات؟ لقد كنت أبحث في الكود ولكن لم أتمكن من العثور على مكان تخزينها.
هدفي الرئيسي هو العثور على إشعار موظف محدد كُتب خلال الأسبوع الماضي، لذا أبحث عن طريقة لمراجعة أحدث الإشعارات المخصصة.
تعديل: كنت أواجه مشكلة لأنني كنت أبحث عن “ملاحظات الموظفين”. لقد وجدت للتو حقلًا مخصصًا قد يكون ما أبحث عنه، لكنني لست متأكدًا من كيفية سرد جميع إشعارات الموظفين ذات النص المخصص.
pry(main)> p.custom_fields
=> {"notice_type"=>"new_user"}
tgxworld
(Alan Tan)
7 أغسطس 2019، 8:53ص
2
PlugintStoreRow.where(plugin_name: "user_notes") هو على الأرجح ما تبحث عنه
j127
7 أغسطس 2019، 8:56ص
3
شكرًا لك، أنا أبحث عن “إشعارات الموظفين” (ميزة أساسية)، والتي أعتقد أنها تختلف عن “ملاحظات المستخدمين” (إضافة منفصلة). قد أكون مرتبكًا، رغم ذلك.
العنصر المسمى “إضافة إشعار للموظفين”:
tgxworld
(Alan Tan)
7 أغسطس 2019، 11:45ص
4
يجب أن يكون في الحقول المخصصة كما ذكرت
def notice
raise Discourse::NotFound unless guardian.is_staff?
post = find_post_from_params
if params[:notice].present?
post.custom_fields["notice_type"] = Post.notices[:custom]
post.custom_fields["notice_args"] = PrettyText.cook(params[:notice], features: { onebox: false })
post.save_custom_fields
else
post.delete_post_notices
end
render body: nil
end
j127
8 أغسطس 2019، 6:40ص
5
شكرًا لك. في حال كان أي شخص آخر يبحث عن طريقة سريعة لاستعراض البيانات، فهذا يعمل في وحدة تحكم Rails:
results = Post.all.reject { |p| p.custom_fields['notice_type'].nil? }
results.each do |r|
puts r.custom_fields
end
مخرجات عينة:
{"notice_type"=>"returning_user", "notice_args"=>"2018-08-04T07:43:52Z"}
{"notice_type"=>"new_user"}
{"notice_type"=>"new_user"}
{"notice_type"=>"new_user"}
{"notice_type"=>"returning_user", "notice_args"=>"2016-10-11T09:32:30Z"}
{"notice_type"=>"returning_user", "notice_args"=>"2014-04-02T16:16:04Z"}
{"notice_type"=>"new_user"}
{"notice_type"=>"new_user"}
لا أرى أي نص مخصص هناك، لذا أعتقد أن إشعار الموظفين الذي كنت أبحث عنه غير نشط.