有没有办法刷新Laravel 4中的所有缓存?我正在使用文件进行缓存.我阅读了您可以使用的文档Cache::forget('key'),但是如果我需要删除所有缓存呢?
工匠命令也很有用,我认为回购上有一个问题,但不确定它是否已经实现.
谢谢!
有没有办法使用Schema Builder的迁移在Laravel 4中的表上设置主键的自动增量初始值?
我想将表的id设置为从100开始.我知道可以使用纯SQL ALTER TABLE MY_TABLE AUTO_INCREMENT = 111111;,但我想使用Laravel Migrations维护数据库版本控制.
任何的想法?
在Silex中是否有一种方法可以为一个请求定义多个路由.我需要能够为一个页面定义两个路由(两个路由都占用同一页面).这是我当前的控制器:
$app->get('/digital-agency', function() use ($app) {
return $app['twig']->render('digital_agency.html', $data);
});
Run Code Online (Sandbox Code Playgroud)
当我像这样复制函数时,它可以工作:
$app->get('/digital-agency', function() use ($app) {
return $app['twig']->render('digital_agency.html', $data);
});
$app->get('/agencia-digital', function() use ($app) {
return $app['twig']->render('digital_agency.html', $data);
});
Run Code Online (Sandbox Code Playgroud)
那么,有什么想法更干净的方法吗?
可以在Vagrant框内连接主机的MySQL服务器吗?我正在运行一个RoR vagrant box,但我需要连接到主机数据库服务器.
有帮助吗?
如何在路由中添加过滤器并将控制器传递给它?
在Laravel的文档中,他们说你可以为这样的路线添加一个过滤器:
Route::get('/', array('before' => 'auth', function()
{
return 'Not Authorized';
}));
Run Code Online (Sandbox Code Playgroud)
但我需要传递一个控制器,如下所示:
Route::get('/', array('before' => 'auth', 'HomeController@index'));
Run Code Online (Sandbox Code Playgroud)
但是当我这样做时,我得到了这个错误:
call_user_func_array() expects parameter 1 to be a valid callback, no array or string given
Run Code Online (Sandbox Code Playgroud)
任何的想法?
我正在使用Silex建立网站,并使用Twig根据json文件显示内容。
这是控制器中的代码:
$app->get('/', function() use ($app) {
$data = $app['data']->get('contactUs', 'es');
return $app['twig']->render('test.html', $data);
});
Run Code Online (Sandbox Code Playgroud)
Data只是一个自定义类,将要显示的页面以及要使用的语言作为参数,并根据Twig用作页面上数据的json文件返回一个数组。
问题是json文件包含HTML标记,并且当Twig渲染页面时,它将它们显示为实体,例如,我的test.html模板如下所示:
<!DOCTYPE html>
<html>
<head>
<title>Twit Test</title>
</head>
<body>
{{ bannerTitle }}
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
但这输出以下内容{{ bannerTitle }}:
<span class='title light'>Contact Us</span>
Run Code Online (Sandbox Code Playgroud)
通过查看源代码,它看起来像这样:
<span class='title light'>Contacto y</span><br><span class='title'>Ubicación</span>
Run Code Online (Sandbox Code Playgroud)
我环顾了文档,并且知道可以在模板上使用原始过滤器来避免这种情况,如下所示:
{{ bannerTitle|raw }}
Run Code Online (Sandbox Code Playgroud)
但是我想尽可能保持模板上的代码干净,并避免将raw所有内容放到模板上。
有没有办法告诉Twig始终将生成的输出视为原始输出?
PS:我也尝试用htmlentities,html_entity_decode等解析生成的数据,但没有运气:(
我已经正确安装了Laravel Homestead,但现在我想添加一个额外的站点,我已完成文档中的每一步,编辑我Homestead.yaml和我的hostfile:
Homestead.yaml
---
ip: "192.168.10.10"
memory: 2048
cpus: 1
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: ~/Projects
to: /home/vagrant/Projects
sites:
- map: scp.dev
to: /home/vagrant/Projects/scp
- map: katniss.dev
to: /home/vagrant/Projects/katniss
databases:
- scp
variables:
- key: APP_ENV
value: local
Run Code Online (Sandbox Code Playgroud)
HOSTFILE
192.168.10.10 scp.dev
192.168.10.10 katniss.dev
Run Code Online (Sandbox Code Playgroud)
但是当我运行vagrant provision它时会显示:
运行此命令需要Vagrant环境或目标计算机.运行vagrant init以创建新的Vagrant环境.或者,从中获取目标计算机的ID vagrant global-status以运行此命令.最后一个选项是使用Vagrantfile更改为目录并再次尝试.
我是否必须在特定文件夹上运行此命令?
我将把一个Laravel应用程序的几个实例部署到一个唯一的服务器上.每个实例都需要不同的数据库配置.基于主机名的默认Laravel环境配置对我不起作用,因为所有应用程序都将位于同一服务器上,因此无法确定要使用哪个配置文件.这是我的bootstrap/start.php档案:
$env = $app->detectEnvironment(array(
'development' => array('Ariels-MacBook-Pro.local'),
'server' => array('srv-hostname'),
));
Run Code Online (Sandbox Code Playgroud)
我可以基于域定义环境(因为我的应用程序区域将位于不同的域),这将是很好的,所以这样我就可以为每个域定义不同的配置(托管在同一台服务器上)
有任何想法吗?
我有以下网址:
http://data.test.com/api/v1/entity/1231
Run Code Online (Sandbox Code Playgroud)
v1/我需要获取前后/(斜杠之间)的文本,在本例中为单词entity。我正在使用以下正则表达式,但我得到的是entity/1231第 1 组:
/^[^\#\?]+\/v1\/([^\?]+).*$/
Run Code Online (Sandbox Code Playgroud)
关于如何摆脱1231或之后发生的任何事情有什么想法entity吗?
可以使用选项内的按钮或链接创建选择输入吗?我想用它来列出一些值,并在选项中选择一个"Create Value"按钮.我不知道这是否可行.我用href尝试过它,但它把它视为文本.
这将是理想的情况:
<select name="things">
<option value="1">Thing One</option>
<option value="2">Thing Two</option>
<option value="3">Thing Three</option>
<option value=""><button>New Thing</button></option>
</select>
Run Code Online (Sandbox Code Playgroud)
我搜索,但没有运气.有人知道jQuery插件或类似的东西可能有效吗?