قوانین دسترسی در جدولی به اسم ir.model.access  ذخیره می شوند. ادو چطوری این کار رو می کند؟ دنبال فایلی به اسم ir.model.access.csv در پوشه security می گردد واطلاعات آن رو در جدول مربوط می نویسد.

این جدول دو دسته  چهارتایی فیلد دارد. دسته اول تعاریف است و دسته دوم 4 عدد که دلالت بر read,write,create,unlink است.

idبهتره با access_ شروع بشه . دومی ، اسم access right هست که باید با نقطه جدا شود و اسم مدل که باید با _ جدا شود . برای اسم مدل ، اولش باید با model_ شروع شود و اسم مدل با جایگزینی _ به جای نقطه و چهارمی هم که گروه دسترسی.

در مانیفست در خط اول این فایل رو تعریف می کنیم

تمامی کارمندان employees عضوی از گروه base.group_user هستند.

در مورد ساخت گروه دسترسی، یک ایده متداول این هست که یک گروه user داشته باشیم و یک گروه manager

نوعی گروه دسترسی هم داریم که مثلا در برنامه املاک ، کارمندان فقط بتوانند مواردی که خودشان ثبت کرده اند را مدیریت کنند

چهار تا جدول هستند که در مورد access right استفاده می شوند
ir.module.category
res.groups
ir.rule
ir.model.access

در ادامه مثال ساده ای از تعریف قوانین آمده است :

1) ابتدا یک category برای ماژولمون درست می کنیم

این category باعث می شه که تعاریف ما برای تمام ماژول ها در این category صدق کنه

2) دو تا گروه دسترسی برای آن category درست می کنیم .

نکته : ref از روی external id به ما آی دی اصلی در جدول رو می دهد

3) در این مرحله تعریف می کنیم که اون گروه های دسترسی ، به یک مدل چگونه دسترسی داشته باشند

البته بصورت فایل csv همانند اول مقاله هم میشود این تعریف رو انجام داد

4)به عبارت دیگر قوانین دسترسی روی رکوردها

تعریف می کنیم که چه رکوردهایی از یک جدول برای یک گروه دسترسی دیده شوند.

قوانین دسترسی در ادو لم خاصی داره که یادگیری و تسلط به آن در ابتدا پیچیده بنظر می رسد. امیدوارم سر نخ هایی از این مقاله دستگیر شما شده باشد.

پیام بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *