# إضافة إعداد مخصص لكل مستخدم في إضافة

**URL:** https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048
**Category:** Developers
**Tags:** plugin-guides, how-to
**Created:** [6 أغسطس 2018، 8:39م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048 "2018-08-06T20:39:54Z")
**Posts on this page:** 8
**Page:** 2

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [29 ديسمبر 2022، 6:37م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/22 "2022-12-29T18:37:31Z")

</div>

أنا أختبر هذا هنا

> <https://github.com/xfalcox/discourse-locations/commit/6039d3b5799563d9b24994fe537a9661b8edc6a4>

وهو يبني بشكل جيد. لست متأكدًا من الوظائف لأنني لم أستخدم المكون الإضافي مطلقًا وليس لدي فكرة عما يجب اختباره.

التوقيع الخاص بالدالة `register_editable_user_custom_field` هو اسم حقل وعلامة اختيارية لوضع علامة عليه كـ staff\_only، لذا على حد علمي، هل تمرير مصفوفة إليها أمر غير متوقع؟

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [29 ديسمبر 2022، 6:39م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/23 "2022-12-29T18:39:37Z")

</div>

نعم، هل هذا غير معتاد؟

لكن يبدو أن حل ديفيد يحل المشكلة.

هذا:

```plaintext
  register_editable_user_custom_field :geo_location if defined? register_editable_user_custom_field
  register_editable_user_custom_field geo_location: {} if defined? register_editable_user_custom_field

```

يتعطل. هذا لا يتعطل:

```plaintext
 register_editable_user_custom_field [:geo_location, geo_location: {}] if defined? register_editable_user_custom_field

```

هل يبدو أن إصدار Ruby أجبر هذا التغيير؟

على أي حال، أعتقد أن لدينا حلاً ويجب علينا تحديث المنشور الأصلي؟

سأحتاج إلى إجراء تغيير على إضافة أخرى، وسأقوم بتحديث الويكي أعلاه إذا كنت راضيًا.

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [29 ديسمبر 2022، 7:11م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/24 "2022-12-29T19:11:07Z")

</div>

للعلم، يبدو أنه يعمل في البناء والتشغيل 🎉

شكرا لمساعدتك.

---

<div class="post-metadata">

### Author: ![RGJ](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/rgj/32/523185_2.png) [@RGJ](https://meta.discourse.org/u/RGJ)
#### Post date: [30 ديسمبر 2022، 12:21ص UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/25 "2022-12-30T00:21:35Z")

</div>

> [@david](#):
>
> هل يمكن أن يكون هذا متعلقًا بـ Ruby 3.x؟

أعتقد أنه هذا، [Separation of positional and keyword arguments in Ruby 3.0](https://www.ruby-lang.org/en/news/2019/12/12/separation-of-positional-and-keyword-arguments-in-ruby-3-0/)

---

<div class="post-metadata">

### Author: ![pirhoo](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pirhoo/32/527677_2.png) [@pirhoo](https://meta.discourse.org/u/pirhoo)
#### Post date: [20 ديسمبر 2023، 4:40م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/26 "2023-12-20T16:40:54Z")

</div>

مرحباً 👋

أحاول إنشاء حقل مستخدم مخصص من مكون إضافي ولكني لست متأكدًا من أنني أفهم تمامًا ما تصفه هنا. في المكون الإضافي الخاص بي إذا قمت بما يلي:

```plaintext
register_editable_user_custom_field 'foo'

```

هل يجب أن أستخدم موصلات منافذ المكون الإضافي لعرضها على ملف تعريف المستخدم وبطاقة المستخدم؟

أم أن هناك آلية مثل [الحقل المخصص في المسؤول](https://meta.discourse.org/t/create-and-configure-custom-user-fields/113192) يمكنها إضافته تلقائيًا (بما في ذلك في دليل المستخدمين)؟ أريد تجنب إضافة موصل وحقل مُسلسل إذا كانت هناك طريقة للقيام بذلك بالفعل.

شكراً لمساعدتك!

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [20 ديسمبر 2023، 5:33م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/27 "2023-12-20T17:33:05Z")

</div>

انظر؟:

> [@Adding non-visible user custom fields to the API](https://meta.discourse.org/t/adding-non-visible-user-custom-fields-to-the-api/276618):
>
> bookmark This guide explains how to expose user custom field data through the API without displaying it on a user card. person_raising_hand Required user level: Administrator This guide will walk you through the process of making User Custom Field data accessible via the API without displaying it on a user card. This can be useful when you need to programmatically access custom user data while keeping it hidden from general view. Creating a User Custom Field First, create your User Cu…

---

<div class="post-metadata">

### Author: ![pirhoo](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pirhoo/32/527677_2.png) [@pirhoo](https://meta.discourse.org/u/pirhoo)
#### Post date: [20 ديسمبر 2023، 6:10م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/28 "2023-12-20T18:10:16Z")

</div>

مرحباً @merefield، شكراً على الرابط ولكن هذا ليس ما أطلبه. يبدو أنه لإنشاء حقل مخصص تم إنشاؤه في لوحة الإدارة غير مرئي إلا باستخدام مفتاح واجهة برمجة تطبيقات للموظفين.

إذا لم أكن واضحاً، دعني أعيد الصياغة: هل هناك طريقة لتسجيل حقل مستخدم مخصص باستخدام إضافة، تماماً كما نفعل ضمن “حقول المستخدم” في لوحة الإدارة (قابلة للتعديل، قابلة للبحث، معروضة في ملف تعريف المستخدم، في بطاقة المستخدم، إلخ)؟

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [20 ديسمبر 2023، 6:49م UTC](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048/29 "2023-12-20T18:49:07Z")

</div>

عذرًا، أتساءل عما إذا كان هذا قد يكون أكثر فائدة؟:

> [@How to add custom fields to models](https://meta.discourse.org/t/how-to-add-custom-fields-to-models/184485):
>
> This is a collection of education plugins that demonstrate how to add a custom field to different models in Discourse. They are intended as learning tools for those looking to learn how to build discourse plugins. [[GitHub-Mark] How to add a custom field to a topic](https://github.com/pavilionedu/discourse-topic-custom-fields)[[GitHub-Mark] How to add a custom field to a category](https://github.com/pavilionedu/discourse-category-custom-fields)Who they’re for These plugins are for people looking to learn more about creating Discourse plugins. Before you start working with these plugins, you should complete the [beginne…](https://meta.discourse.org/t/beginners-guide-to-creating-discourse-plugins/30515)

تحتوي جميع النماذج الرئيسية على إمكانية حقل مخصص.

[Previous page](https://meta.discourse.org/t/add-a-custom-per-user-setting-in-a-plugin/94048.md?page=1)
