我得到以下内容:
<a href="{{ path('_be_activatecategory', {'id': category.id, 'active': 1}) }}">Aktivieren</a>
Run Code Online (Sandbox Code Playgroud)
创建
/后端/类别/激活/ 8/1
然后我得到了
<a href="{{ path('_category', {'id': category.id}) }}">
Run Code Online (Sandbox Code Playgroud)
这创造了
/类别?ID = 1
看到不同?我想要的是在第二种情况下与第一种情况完全相同:
/类别/ 1
我怎么能管理这个?为什么path()帮助器没有为我创建带参数的正确url?
编辑:
我的路由看起来像这样:
/**
* @Route("/category/{id}", name="_category")
* @Template()
*/
public function categoryAction($id)
{
Run Code Online (Sandbox Code Playgroud) 我需要控制器内部动作的完整路径,通过电子邮件发送.我怎样才能{{ path('_route') }}从我的控制器内部实现类似的东西?
我用文件获取文件
$fp = fopen('uploads/Team/img/'.$team_id.'.png', "rb");
$str = stream_get_contents($fp);
fclose($fp);
Run Code Online (Sandbox Code Playgroud)
然后该方法将其作为图像返回.但是当fopen()失败时,因为该文件不存在,它会抛出一个错误:
[{"message":"Warning: fopen(uploads\/Team\/img\/1.png): failed to open stream: No such file or directory in C:\...
Run Code Online (Sandbox Code Playgroud)
显然,这将以json的形式回归.
问题现在是:我如何捕获错误并阻止该方法直接将此错误抛给客户端?
我无法真正了解如何在symfony2中使用datetime-objects.
我在数据库中有几个游戏条目,其中一个具有datetime属性.现在我想与实际日期进行比较:我想拥有过去10天的所有记录.我怎么能实现这个目标?
我试过这个
date($game->getZeit(), mktime(0,0,0,date('m'),date('d'),date('y')))
Run Code Online (Sandbox Code Playgroud)
得到一个我可以比较的比较日期
date('Y.m.d H:i:s', mktime(0,0,0,date('m'),date('d'),date('y')));
Run Code Online (Sandbox Code Playgroud)
但那没有用,因为
$game->getZeit()
Run Code Online (Sandbox Code Playgroud)
无法转换为字符串.为什么?那我怎么调试这个?我怎么知道它的价值?如何将其与其他日期时间或日期字符串进行比较?
快速帮助将非常感谢!:)
亲切的问候
如果现在更新我的symfony项目到facebook-sdk-v4.我现在的问题是如何将其集成到我的控制器中使用?
对于旧版本,我在autoload.php中有以下行
//Loading facebook from vendor
require_once __DIR__ . '/../vendor/facebook/php-sdk/src/facebook.php';
Run Code Online (Sandbox Code Playgroud)
然后在控制器中我可以这样
$facebook = new \Facebook(array(
'appId' => $this->container->getParameter('fb_appid'),
'secret' => $this->container->getParameter('fb_secret')
));
$fb_userid = $facebook->getUser();
Run Code Online (Sandbox Code Playgroud)
在我的控制器中没有任何使用声明.
现在4.0版本有点不同了.供应商中不再有facebook.php文件,因此我现在不知道需要什么.和API调用也不同,它看起来像
FacebookSession::setDefaultApplication('YOUR_APP_ID', 'YOUR_APP_SECRET');
Run Code Online (Sandbox Code Playgroud)
当我执行它时,symfony告诉我它无法从全局命名空间加载"FacebookSession",如果我忘记了use语句.
有没有人有经验如何在symfony2中包含新的facebook php sdk?
我想在我的视图中构建一个链接,指向与放置它的那个页面相同的页面.我希望能够给出一个参数.
例如,我想改变语言.我有一条路线
domain.com/{lang}/xyz
Run Code Online (Sandbox Code Playgroud)
在我看来,我想做点什么
<a href="{{ URL::action(this, ['lang' => 'en']) }}">EN</a>
Run Code Online (Sandbox Code Playgroud)
所以我可以轻松地重新加载页面,但只需更改"lang"参数.
希望它可以理解.请尽力帮助我.
(另一个问题:是否没有资源,例如Laravel中所有视图助手的列表?我在哪里知道哪些视图助手可用?)
通过ajax(jQuery)将一些纯文本作为html粘贴到div中后,文本会覆盖自身。

我不知道发布我的所有代码是否有帮助,但也许有人以前遇到过同样的问题,可以给我一个提示。
我正在使用 Symfony2 和 jQuery(ajax 请求操作)。
这是ajax请求和回调:
$('.tile').click(function(e){
e.preventDefault();
var thisTileImg = e.target
var x = thisTileImg.x;
var y = thisTileImg.y;
var tileID = thisTileImg.id;
// execute ajax-request to turnAction and give parameters for x and y of the tile
var request = $.ajax({
url: pathTurnAction,
type: "POST",
data: {'x':x, 'y':y, 'tileID':tileID},
dataType: "html"
});
request.done(function(msg) {
var obj = jQuery.parseJSON(msg);
switch(obj.result){
case -1:
showPopup(obj.text, obj.button);
break;
case 0:
thisTileImg.src = pathTileImg0;
break;
case 1:
thisTileImg.src = pathTileImg1;
break; …Run Code Online (Sandbox Code Playgroud) 我想使用LiipImagineBundle调整我在控制器中上传的图片的大小.
$extension = $file->guessExtension();
$newfilename = sha1(uniqid(mt_rand(), true));
$tmp_folder = $this->get('kernel')->getRootDir() . '/../web/uploads/tmp/'; // folder to store unfiltered temp file
$tmp_imagename = $newfilename.'.'.$extension;
$file->move($tmp_folder, $tmp_imagename);
$tmpImagePathRel = '/uploads/tmp/' . $tmp_imagename;
$processedImage = $this->container->get('liip_imagine.data.manager')->find('profilepic', $tmpImagePathRel);
$newimage_string = $this->container->get('liip_imagine.filter.manager')->get($request, 'profilepic', $processedImage, $tmpImagePathRel)->getContent();
unlink($tmp_folder . $tmp_imagename); // eliminate unfiltered temp file.
$perm_folder = $this->get('kernel')->getRootDir() . '/../web/uploads/userimages/';
$perm_imagepath = $perm_folder . $newfilename . '.jpeg';
$f = fopen($perm_imagepathh, 'w');
fwrite($f, $newimage_string);
fclose($f);
Run Code Online (Sandbox Code Playgroud)
这带来了以下错误:
Attempted to call method "get" on class "Liip\ImagineBundle\Imagine\Filter\FilterManager" in C:\...\UserController.php line xx. …Run Code Online (Sandbox Code Playgroud) 我在我的项目中使用FOSElasticaBundle来搜索我的Player实体.因为我只想isactive在值上搜索具有属性的实体,所以1我按照"过滤结果并执行默认查询"的文档:FriendsOfSymfony/FOSElasticaBundle/README.md
$query = new \Elastica\Query\QueryString($searchterm);
$term = new \Elastica\Filter\Term(array('isactive' => true));
$filteredQuery = new \Elastica\Query\Filtered($query, $term);
$players = $this->get('fos_elastica.finder.xxx.player')->find($filteredQuery);
Run Code Online (Sandbox Code Playgroud)
我的包的配置如下所示:
fos_elastica:
clients:
default: { host: localhost, port: 9200 }
serializer:
callback_class: FOS\ElasticaBundle\Serializer\Callback
serializer: serializer
indexes:
xxx:
client: default
types:
player:
mappings:
firstname: { boost: 3 }
lastname: { boost: 3 }
serializer:
groups: [elastica, Default]
persistence:
driver: orm
model: xxx\FrontendBundle\Entity\Player
listener: ~
provider: ~
finder: ~
Run Code Online (Sandbox Code Playgroud)
现在我想做一些排序并用限制和偏移量削减结果.我怎样才能实现这一目标?
我发现了一个像这样的解
$finalQuery = new \Elastica\Query($boolQuery);
$finalQuery->setSort(array('price' …Run Code Online (Sandbox Code Playgroud) Laravel:当有人访问后路由而不给出post参数时,如何防止RouteCollection.php中的MethodNotAllowedHttpException?
当我定义一个邮政路线时,它只能通过邮寄请求进行访问.如果我在浏览器中正常调用url,它会引发异常.怎么预防这个?
我在我的控制器中创建一个没有实体的表单如下:
$defaultData = array('message' => 'Assign');
$form_assign = $this->createFormBuilder($defaultData)
->add('team', 'text', array('label' => 'Team'))
->add('create', 'button', array('label' => 'Create'))
->getForm();
Run Code Online (Sandbox Code Playgroud)
现在,当我在视图中渲染表单时
{{ form(form_assign) }}
Run Code Online (Sandbox Code Playgroud)
表单的名称总是"形式",如下所示:
<form name="form" method="post" action>
Run Code Online (Sandbox Code Playgroud)
如何更改表单的名称属性?我使用Symfony版本2.4.2
(我已经在一个类似的问题上阅读了这个评论并试了一下,但它对我没用.)
symfony ×7
php ×4
laravel ×2
ajax ×1
attributes ×1
controller ×1
css ×1
datetime ×1
exception ×1
facebook ×1
fopen ×1
forms ×1
jquery ×1
post ×1
view-helpers ×1