<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های navidsa</title>
        <link>https://virgool.io/feed/@navidsa</link>
        <description>Django developer</description>
        <language>fa</language>
        <pubDate>2026-04-15 09:49:00</pubDate>
        <image>
            <url>https://static.virgool.io/images/default-avatar.jpg</url>
            <title>navidsa</title>
            <link>https://virgool.io/@navidsa</link>
        </image>

                    <item>
                <title>اموزش ایجاد سطح دسترسی در لاراول</title>
                <link>https://virgool.io/laravel-community/laravel-permission-c1gxeqqcwm9w</link>
                <description>یکی از چیزهایی که ما توی پروژه ها  خیلی بهش نیاز داریم ، تعیین سطح دسترسی برای کار است و حتی پکیجهایی هستند که شما میتوانید با نصب آنها سطح دسترسی آنها را مدیریت کنید ، با اینجال ما در این مطلب تصمیم داریم که آموزش ایجاد سطح دسترسی در لاراول به صورت دستی یاد بگیریمتعیین سطح دسترسی به 2 شکل انجام میشود  :روش اول -&gt; گروه کاریمثلا میتونید تعریف کنید که اگه مدیر بود بتونه این ایتم ها رو ببینه و انجام بده و همه کاربران یک گروه دسترسی برابری دارند و در صورتی که یک دسترسی تعریف کنید برای همه اعمال خواهد شد روش دوم -&gt; سطح دسترسی انتخابیدر این روش شما مشخص میکنید که مثلا کاربر نوید به ایتم های مشخصی دسترسی داشته باشد و افرادی که در یک گروه هستند دسترسی های برابری ندارند و هرکس بنا به احتیاجات خودش به ایتم های مشخصی دسترسی دارهخوشبختانه در لاراول ما ابزاری  به نام Gate  و در سطح گسترده تر  Policy داریم ، با وجود Gate شما میتوانید با کمترین سطح کد نویسی دسترسی ها رو اعمال کنیدتعریف دسترسی بر اساس گروه کاریابتدا در تیبل کاربران خود یک فیلد اضافه میکنیم به نام typeافزودن فیلد type به کاربرافزودن فیلد user_type به دیتابیسسپس در فایل  :  &#x27;app/Providers/AuthServiceProvider.php&#x27;به شکل زیر 3 عدد Gate برای دسترسی های مدیر ، ویرایشگر  و نویسنده تعریف میکنیم :تعریف Gate ها برای مشخص کردن سطح دسترسیهمچنین اگر از PHP Storm استفاده نمیکنید و import ندارید ، یادتون نره که به شکل زیر Gate رو import  کنیدimport Gateخب حالا کار ما تمومه .حالا شما در 2 جا نیاز دارید که از Gate استفاده کنید ،  یکی درون فایلهای html و موتور قالب Blade و دیگری  درون کنترلر هاستبرای اینکه مشخص کنید که کاربر به چیزی دسترسی داره ، شما میتونید از کلمه کلیدی can استفاده کنیداستفاده درون  موتور قالب  bladeمثلا در تصویر زیر مشخص کردیم که کاربر به Dashboard - New Post  و  Edit Post دسترسی داشته باشدهمچنین اگر بخواهید درون کنترلر ها  تعیین کنید که کاربر به چه چیزهایی دسترسی داشته باشد  به جای can میتوانید از  کلمه allows استفاده کنید ، در تصویر زیر ، ما گفتم که اگر کاربر Admin بود  به پیغام دسترسی داشته باشد تعیین سطح دسترسیروش دوم ، در پست بعد (بزودی)</description>
                <category>navidsa</category>
                <author>navidsa</author>
                <pubDate>Sun, 08 Sep 2019 13:59:42 +0430</pubDate>
            </item>
                    <item>
                <title>تجربه استفاده از PHP و MYSQL روی سرور ویندوز و Centos</title>
                <link>https://virgool.io/@navidsa/%D8%AA%D8%AC%D8%B1%D8%A8%D9%87-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-php-%D9%88-mysql-%D8%B1%D9%88%DB%8C-%D8%B3%D8%B1%D9%88%D8%B1-%D9%88%DB%8C%D9%86%D8%AF%D9%88%D8%B2-%D9%88-centos-n3ycbbk6ckoh</link>
                <description>چند وقت پیش مدیرمون ازم خواست که گزاری از سیستم حسابداریمون بگیرم و بهش بدمسیستم گزارش رو با PHP نوشتیم و روی سرور راه اندازی کردیم ، توی این گزارش هر سطر از داده ها 10 تا فیلد داشتن که هرکدام از جداول جداگانه ای خوانده میشدند و محاسبه میشند (نرمالیزاسیون انجام شده بود)لیست جداول :فاکتور ها -&gt; (اطلاعات هر فاکتور)اقلام فاکتور -&gt; ردیف های موجود در هر فاکتور  (24 ستون)شرکت ها -&gt; اطلاعات شرکت صادر کننده فاکتور** به دلیل اینکه اطلاعات به صورت روزمره نیاز ما نبود برای اینکه به سرور فشاری وارد نکنیم مثلا در فیلد مالیات فقط مقدار آن را ذخیره کرده و برای گزارش گیری آن را محاسبه میکنیم **لیست فیلد های گزارش : ردیف  | شماره فاکتور | تاریخ فاکتور  |  نام شرکت -&gt; از جدول شرکتهامبلغ ناخالص -&gt; جمع کل ستون های موجود (اقلام فاکتور)تخفیف حجمی -&gt; جمع کل تخفیفات حجمی موجود در فاکتور (هر کدام جداگانه با درصد های محتلف باید محاسبه میشدند)مالیات -&gt; (بعضی ها داشتند و بعضی نداشتند)تخفیف نقدی-&gt; (بعضی ها داشتند و بعضی ها نداشتند)درصد شرکتی -&gt; درصدی است که کلی به فاکتور تخفیف میدهندمبلغ تخفیفات ( جمع کل تخفیفات)خالص فاکتور اطلاعات جداول:** تعداد سطر ها : 12000تعداد اقلامی که باید محاسبه بر روی انها انجام میشد -&gt; 100 هزار به دلیل اینکه محاسبات هر 3 ماه یکبار نیاز میشد نیازی نبود که درون جدول ذخیره بشوند و هر بار محاسبه مجدد انجام میشد (به دلیل اینکه در استفاده روزمره فشاری به سرور وارد نشود)اطلاعات مشابه : PHP 7.2  Server type: MariaDBServer version: 10.1.36-MariaDB - mariadb.org binary distributionاطلاعات  سرور لینوکس : OS : CentOs 7 minimalram :4 GB اطلاعات سرور ویندوز :OS: Window server 2008Ram : 16 GbHard : SSDخب ، نتیجه گزارش گیریحین اجرا روی سرور لینوکس : زمان اجرا : 11 ثانیهاجرا روی سرور ویندوزی : زمان اجرا : 19 ثانیه</description>
                <category>navidsa</category>
                <author>navidsa</author>
                <pubDate>Sun, 30 Dec 2018 16:04:24 +0330</pubDate>
            </item>
                    <item>
                <title>داستان اولین برنامه نویسی اندروید من</title>
                <link>https://virgool.io/coderlife/first-android-app-xzgbf7ezpbe4</link>
                <description>همین اولش بگم سلام ، آخه این اولین پست من توی ویرگوله حدود 2 سال  پیش تصمیم گرفتم برنامه نویسی اندروید رو شرو ع کنم  ولی خب اینو بگم که همون اولش با مشکلات مخصوص اندروید (سینک نشدن gradle ) رو به رو شدم و به کل بیخیالش شدمگذشت تا یه روز تصمیم گرفتم که مجددا شروع کنم به برنامه نویسی اندروید  ، و شروع کردم به یاد گرفتن کد و کم کم جلو میرفتم ، تا اینکه یه روز مدیر شرکتمون گفت که نیاز به یه برنامه اندروید داریم برای شرکن ، منم خب شاد و خوش و خنده کنان داوطلب شدم برا نوشتنش (یکی نیست بگه آبت نبود ، نونت نبود)  . شروع کردم به نوشتن برنامه ، چند روز بعد مدیرمون اومد و یه ددلاین برای پروژه مشخص کرد که باید تا این تاریخ انجام بشه ، بازم رفتم جلو که دیدم هر روز فشار ها هی بیشتر میشن و تصمیم گرفتم شب ها هم روی پروژه کار کنم تا فقط تموم بشه هرچند هنوز پروژه تموم نشده ولی بگم این فشار های مدیر باعث شده که من خیلی سریعتر اندروید رو یاد بگیرم و از این بابت از خودم خوشحالم و این شد که شدم یه اندروید دولوپر</description>
                <category>navidsa</category>
                <author>navidsa</author>
                <pubDate>Sat, 30 Jun 2018 05:59:52 +0430</pubDate>
            </item>
            </channel>
</rss>