Changes between Version 7 and Version 8 of Имплементација


Ignore:
Timestamp:
11/14/21 18:46:06 (3 years ago)
Author:
151545
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Имплементација

    v7 v8  
    1010
    1111=== - Имплементациски дијаграм ===
    12 Во овој дел ќе бидат прествени и објаснати одредени функционалности од системот кои се користат нај често во рамки на системот. Ќе започнам со објаснување за начинот на креирање на оддел кој што е предуслов за креирање на фолдер т.е. документ.
     12Во овој дел ќе бидат прествени и објаснати одредени функционалности од системот кои се користат нај често во рамки на системот. Ќе започнам со објаснување за начинот на креирање на оддел кој што е предуслов за креирање на фолдер т.е. документ.\\
     13Во MVC системот Model е објект кој се состои од податоци во одредена табела во база. View го претставува интерфејсот преку кој корисникот комуницира со апликацијата. Кога корисникот презема акција, контролорот се справува со акцијата и ги ажурира податоците во база преку моделот доколку е потребно.\\
     14Во Laravel, Model обично е класа со променливи што одговараат на колоните во базата на податоци т.е. променливите кои се дефинирани во Migrations во одредена табела. Контролерите се одговорни за завршување на корисничките дејства и за управување со деловната логика на апликацијата. Рутирањето на ресурсите во Laravel ги доделува „CRUD“ операциите или функциите дефинирани во контролерот со една линија код.\\
    1315
    14 [[Image()]]
    15 ''Слика 6 - Код од функцијата за креирање на нов оддел''
     16{{{
     17public function index()
     18    {
     19        return view("dashboard.departments.index")->with([
     20            "departments" => Department::all(),
     21        ]);
     22    }
     23}}}\\
     24''Метод од контролерот DepartmentsController за приказ на сите оддели запишани во база''\\
     25Методот index се повикува кога рутата /departments е вчитана со методот GET HTTP. Во овој метод, ние ги преземаме сите достапни  податоци во табелата со оддели користејќи го моделот Department и го пренесуваме во интерфејсот вкако променлива. Ова значи дека во интерфејсот, променливата $departments ќе може да се користи за да се прикажат податоци од колекцијата која ги состои сите оддели.
     26
     27{{{
     28// Departments view
     29    Route::group(['middleware' => 'permission:view_all_departments'], function () {
     30        Route::get("/departments", "Dashboard\DepartmentsController@index")->name("dashboard.departments.index");
     31    });
     32
     33    // Departments manage
     34    Route::group(['middleware' => 'permission:manage_all_departments'], function () {
     35        Route::post("/departments/store", "Dashboard\DepartmentsController@store")->name("dashboard.departments.store");
     36        Route::get("/departments/{id}/edit", "Dashboard\DepartmentsController@editShow")->name("dashboard.departments.editShow");
     37        Route::patch("/departments/{id}/edit", "Dashboard\DepartmentsController@edit")->name("dashboard.departments.edit");
     38     });
     39}}}\\
     40''Листа на рути за оддели''\\
     41Секој повик во Laravel потребно е да има посебна рута. Рутата со име index ја дефинирав посебно за да се ограничи пристапот за корисници кои имаат ролја во која не е дозволено да управуваат со оддели. Рутата store служи за креирање на нов оддел. Методот во оваа рута е post затоа што треба да се запишуваат нови податоци т.е. да се креира нов оддел. Кога се работи за приказ на податоци се користи методот get како што е рутата editShow која служи за приказ на еден оддел. Методот patch се повикува кога се прави ажурирање на податоците во база што во овој случај е рутата со име edit. На двете рути за да прикажат и ажурираат оддел потребно им е да се додели вредност id која означува id на одделот во табела.
    1642
    1743
     
    4470
    4571
     72
     73Во Ларавел, сите интерфејси се зачувани во директориумот ресурси/прегледи. Вашите погледи обично го складираат HTML-от на вашата страница и се презентациски слој на архитектурата MVC.
     74Ларавел го користи Blade како мотор за шаблони. Блејд е прилично HTML, но со некоја синтакса слична на PHP што може да се инјектира.
     75
     76
     77На пример, доколку креирате контролер што се справува со сите HTTP барања за „оддели“ запишани во вашата апликација. Методот за складирање се повикува кога корисникот испраќа барање POST HTTP до рутата /departments. Од горе наведената логика се добиваат податоците од барањето и се складираат во базата на податоци користејќи го моделот Department.
     78