小编Lau*_*nce的帖子

用于API和非API使用的Laravel资源控制器

PhotosController为API执行AJAX调用的网站创建资源控制器之后,资源控制器似乎可以在普通网站和API上使用.

这将显示Photoid = 1 的HTML页面

http://domain.com/photos/1
Run Code Online (Sandbox Code Playgroud)

和Javascript使用以下更新Photo资源并返回JSON响应

PUT http://domain.com/api/v1/photos/1
Run Code Online (Sandbox Code Playgroud)

问题:我们是否有2个PhotoControllers,一个用于处理API使用,一个用于非API?

php restful-url laravel laravel-4

4
推荐指数
1
解决办法
1896
查看次数

带有可选url $ param(s)的命名路由 - Laravel 4

我遇到了一些与L4(可能是symfony2?)路由的怪癖,我似乎无法在网上或在精彩的Code Bright中找到任何资源,并在IRC中显得空洞.

我正在尝试通过控制器使用带有命名路径的可选参数,但在加载视图时会收到错误.

路线:

Route::get('/topic/{topicID?}', array(
    'as'    => 'topicDetails',
    'uses'  => 'TopicController@showTopic'
));
Run Code Online (Sandbox Code Playgroud)

控制器:

class TopicController extends BaseController {

    public function showTopic($topicID = null)
    {
        $data['topicID'] = $topicID;
        return View::make('topic_view', $data);
    }
}
Run Code Online (Sandbox Code Playgroud)

视图

<a href="{{ route('topicDetails') }}">XXX</a>
Run Code Online (Sandbox Code Playgroud)

错误:

Parameter "topicID" for route "topicDetails" must match "[^/]++" ("" given) to generate a corresponding URL.
Run Code Online (Sandbox Code Playgroud)

我假设这并没有将null价值传递给$param我,但我对L4不太熟悉,弄清楚为什么它不起作用,而且我已经耗尽了我所有的资源.

任何线索将不胜感激谢谢!

laravel laravel-4

4
推荐指数
1
解决办法
8238
查看次数

Laravel - 如何将变量注入密码提醒邮件

使用Laravel 4.1的新密码代理,有没有办法将一些数据传递给密码提醒视图?具体来说,我希望能够更改密码重置视图的URL.

在这里查看:http://laravel.com/api/source-class-Illuminate.Auth.Reminders.PasswordBroker.html#97-118我不确定它是否足够灵活,可以在不完全扩展此类的情况下接受数据...

php laravel laravel-4

4
推荐指数
1
解决办法
2258
查看次数

Laravel 4"Table'database.teches'不存在"

不确定为什么迁移正在寻找'teches'而不是真正的表名'techs'?

文件:TechsTableSeeder.php

class TechsTableSeeder extends Seeder {

/**
 * Run the database seeds.
 *
 * @return void
 */
public function run()
{
    Eloquent::unguard();

    Tech::create(
        [
        'name'=>'technology',
        'description'=>'...',
        'year'=>'2014'
        ]);

}

} 
Run Code Online (Sandbox Code Playgroud)

在php artisan db:seed --class ="TechsTableSeeder",我在终端中收到以下错误:

[照亮\数据库\ QueryException]
SQLSTATE [42S02]:基表或视图未找到:1146表'database.teches'不存在(SQL:插入teches(name, description,year,updated_at,created_at)的值(技术,...,2014 ,2013-12-30 03:23:39,2013-12-30 03:23:39))

不确定为什么迁移正在寻找'teches'而不是真正的表名'techs'?

Model Tech.php确实存在,并通过php artisan生成自动生成:model Tech如下:

class Tech extends Eloquent {
    protected $guarded = array();

    public static $rules = array();
}
Run Code Online (Sandbox Code Playgroud)

laravel laravel-4

4
推荐指数
1
解决办法
4788
查看次数

自定义Laravel Artisan命令无法通过cron作业获得

我有自定义的Artisan命令,当我在SSH上时在本地和我的生产服务器上运行,但是对于任何cron作业都不可用.我甚至尝试以cron作业运行的用户身份运行它,它在我的控制台上工作正常.

当我php artisan在上述设置中运行时,我的自定义命令已列出并可用.但是,当我php artisan作为cron作业运行时,它们不会列出.

此外,尝试将自定义命令php artisan subjects:calculate作为cron作业运行会导致以下错误:

[InvalidArgumentException]
There are no commands defined in the "subjects" namespace.

php cron laravel laravel-4

4
推荐指数
1
解决办法
3867
查看次数

实例化目录中的所有类

我正在使用Laravel并创建工匠命令但我需要通过调用在start/artisan.php中注册每个命令

Artisan::add(new MyCommand);
Run Code Online (Sandbox Code Playgroud)

如何获取目录中的所有文件(app/commands/*),并在数组中实例化它们中的每一个?我想得到类似(伪代码)的东西:

$my_commands = [new Command1, new Command2, new Command3];
foreach($my_commands as $command){
    Artisan::add($command);
}
Run Code Online (Sandbox Code Playgroud)

php instantiation laravel

4
推荐指数
1
解决办法
2335
查看次数

Laravel:跟踪页面浏览量

我正在尝试用Laravel实现一个非常简单的页面跟踪系统,只是为了知道访问最多的页面.

起初我想到创建一个具有访问日期,请求URL(来自Request::path())和用户ID的表,就这么简单.

但是我必须在报告上显示页面标题,为此我需要一些方法将请求URI转换为其页面标题.有什么想法吗?有没有更好的方法来实现这一目标?

目前我从Blade视图文件中设置页面标题@section('title', ...).

先感谢您!

php laravel laravel-4

4
推荐指数
1
解决办法
5956
查看次数

Laravel工匠cron不工作

我有一个页面在beanstalked中排队电子邮件.

该脚本按预期工作,当我有一个队列监听器时,电子邮件被触发,即.

php artisan queue:listen
Run Code Online (Sandbox Code Playgroud)

但是,当我删除监听器并将其添加到crob作业

* * * * * /usr/bin/php /var/www/huge/artisan queue:listen
Run Code Online (Sandbox Code Playgroud)

电子邮件不会被解雇.有任何想法吗?

php cron laravel-4

4
推荐指数
1
解决办法
3244
查看次数

laravel services.json没有创建

有时services.json在跑步composer update或跑步后我失踪了php artisan clear-compiled.

我检查了权限,甚至将其更改为777存储文件夹,但它没有帮助.我该如何调试错误?

我的laravel日志中没有条目,我的apache日志中没有任何内容.我正在使用"laravel/framework":"4.1.*"

laravel laravel-4

4
推荐指数
1
解决办法
5796
查看次数

Laravel 4:找不到"MongoClient"类

我在WAMP上安装了Laravel 4,它与MySQL后端配合得很好.

我已成功设置第二个虚拟主机,并希望使用MongoDB后端.在搜索之后,我发现Laravel本身并没有连接到MongoDB,我发现https://github.com/jenssegers/Laravel-MongoDB,我一直试图设置它,但我似乎无法做到正确.显然我一定是做错了什么,我希望有人可以帮助我找出我做得不对的事情.

composer.json根据说明编辑:

............
"license": "MIT",
"require": {
    "laravel/framework": "4.1.*",
    "jenssegers/mongodb": "*"
},
"autoload": {
.........
Run Code Online (Sandbox Code Playgroud)

然后我跑了composer update.它安装了monolog 1.9.1和swiftmailer v5.2.0 - 无论这些是什么 - 成功(几天前)但之后又抛出了一个错误.今天我试着composer update再次运行,它分别将两个更新为1.10.0和v5.2.1,然后遇到了同样的错误.现在,当我尝试composer update它时,始终会抛出同样的错误:

Nothing to install or update
Generating autoload files
{"error":{"type":"Symfony\\Component\\Debug\\Exception\\FatalErrorException","me
ssage":"Class 'MongoClient' not found","file":"C:\\wamp\\www\\laravel\\vendor\\j
enssegers\\mongodb\\src\\Jenssegers\\Mongodb\\Connection.php","line":132}}Script
 php artisan clear-compiled handling the post-update-cmd event returned with an
error  


  [RuntimeException]
  Error Output:    


update [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--lock]
 [--no-plugins] [--no-custom-installers] [--no-scripts] [--no-progress] [--with-
dependencies] …
Run Code Online (Sandbox Code Playgroud)

php mongodb laravel

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

laravel ×9

laravel-4 ×8

php ×7

cron ×2

instantiation ×1

mongodb ×1

restful-url ×1