Devise\Pages\PagesRepository::findByRouteName PHP Method

findByRouteName() public method

finds a record by it's slug
public findByRouteName ( $name, string $versionName = null, boolean $editing = false ) : Page
$name
$versionName string
$editing boolean
return Page
    public function findByRouteName($name, $versionName = null, $editing = false)
    {
        $page = $this->Page->whereRouteName($name)->firstOrFail();
        // if the user is an admin user they can view any page
        // using the ?page_version query parameter otherwise
        // they just get the live version
        $page->version = $editing && $versionName !== null ? $this->getPageVersionByName($page, $versionName) : $this->getLivePageVersion($page);
        if (!$page->version) {
            throw new PageNotFoundException('Page not found!');
        }
        $page = $this->wrapFieldsAroundPage($page, $page->version);
        return $page;
    }

Usage Example

示例#1
0
 /**
  * Displays details of a page
  *
  * @return Response
  */
 public function show()
 {
     // what does it mean to be in editing mode? right now it is just when you are logged in
     $editing = !is_null(\Auth::user());
     //&& Input::get('editing', false);
     $pageVersionHash = $this->Input->get('page_version_share', null);
     $pageVersionName = $this->Input->get('page_version', null);
     $page = $pageVersionHash ? $this->PagesRepository->findByRouteNameAndPreviewHash($this->Route->currentRouteName(), $pageVersionHash) : $this->PagesRepository->findByRouteName($this->Route->currentRouteName(), $pageVersionName, $editing);
     $localized = $this->PagesRepository->findLocalizedPage($page);
     return $localized ? $this->Redirect->route($localized->route_name) : $this->retrieveResponse($page);
 }
All Usage Examples Of Devise\Pages\PagesRepository::findByRouteName