tarach/laravel-session-messages

此包已被弃用,不再维护。没有建议的替代包。

laravel 5 会话消息管理器

v1.0-rc3 2015-08-22 08:44 UTC

This package is not auto-updated.

Last update: 2018-07-07 15:39:15 UTC


README

提供

  • 多个会话消息
  • 闪存消息(仅用于下一次请求)
  • 持久消息(将在从PHP代码中删除之前显示)
  • 可删除消息(用户必须按下 x,否则它们将在下一个请求中保留)

安装

  • 转到您的laravel目录并运行
    composer require tarach/laravel-session-messages
  • 转到您的 config/app.php 并追加以下提供者
    'providers' => [
        // ...
        Tarach\LSM\Providers\SessionMessageProvider::class,
    ],
  • (可选)在 config/app.php 中追加您喜欢的任何名称的facade。 SessionMessage 不是强制的。
    'aliases' => [
        // ...
        'SessionMessage'  => Tarach\LSM\SessionMessageFacade::class,
    ],
  • 将消息显示在所需视图中的地方添加
    @include('tlsm::messages')
  • 运行 php artisan vendor:publish 此命令将导致以下操作
    • <tlsm>/resources 将被复制到 /resources/tlsm
    • <tlsm>/config/routes.php 将被复制到 /config/tlsm.routes.php 并被加载
    • 当使用 @include('tlsm::messages') 而不是 <tlsm> 目录中的视图时,将使用来自 /resources/tlsm/views 的视图
  • messages.cssmessages.js(需要jQuery)从 /resources/tlsm/assets 添加到您的elixir mix。或者将它们复制到public目录并在模板中包含它们

使用方法

基本
    tlsm_messages()->notify('Message');
    // or
    tlsm_messages('Message'); // same as above

除了通知之外,您还可以使用 failuresuccesswarning

仅显示下一次请求的消息(默认)
    tlsm_messages('Message')
        ->flash()
        ->save()
        // or
        ->setMethod(\Tarach\LSM\Message::METHOD_FLASH) 
        ->save();
显示消息,直到手动删除
tlsm_messages('Message')
      ->persist()
      ->save()
      // or
      ->setMethod(\Tarach\LSM\Message::METHOD_PERSIST)
      ->save();
显示消息,直到用户按下 'x' 并向 /session_message/remove/{id} 发送ajax请求
tlsm_messages('Message')
      ->removable()
      ->save()
      // or
      ->setMethod(\Tarach\LSM\Message::METHOD_REMOVABLE)
      ->save();
追加CSS类
$Message = tlsm_messages('Message');

$Message->addClasses('your-class');
        ->save();
// or
$Message->addClasses(['your-class', 'other-class']);
        ->save();
// or
$Message->setClasses($Message->getClasses().' your-class')
        ->save();
遍历所有已保存的消息
foreach(tlsm_messages() as $Message)
{
    /* @var $Message \Tarach\LSM\Message\Message */
    // ...
}
通过其索引(数字ID)获取消息并检查其是否存在
  $Message = new \Tarach\LSM\Message\Message(0);
  if($Message->exists()) {
      // ...
  }
删除消息
  tlsm_messages('this is saved to session right away as notify')->remove();

~祝您编码愉快 :)