我正在开发一个应用程序,我在其中修改从AWS桶下载的jpeg文件的方向(如果存在).
在这里,您可以验证此图像是否具有exif旋转部分.
我下载图像
file_put_contents('/local/path/to/file', file_get_contents('/path/to/url/image'));
Run Code Online (Sandbox Code Playgroud)
在我尝试通过Gregwar Image库修复方向之后.
Image::open($path)->fixOrientation()->save($dest, $type, $quality);
Run Code Online (Sandbox Code Playgroud)
我尝试了几个图像,我总是收到消息
Warning: exif_read_data('/local/path/to/file'): Illegal IFD size
Run Code Online (Sandbox Code Playgroud)
我认为这是一个与我如何检索图像有关的问题,但我也尝试使用cUrl和fopen得到相同的结果.
有人有一些建议吗?
作为标题,我的目标是回滚在Behat功能测试期间做出的任何提交.我检查这个答案非常相似,但它是从两年前开始,似乎不可能做到.
也许现在有了Behat 3,这是可能的.
我知道使用PHPUnit,我可以使用startUp和tearDown方法达到类似的效果.
我尝试使用@BeforeScenario和@AfterScenario注释来启动和回滚事务挂钩,但似乎behat和应用程序不共享实体管理器的相同实例.
一些建议吗?
谢谢.
谢谢大家的意见.这里有一些新的考虑:
LOAD FIXTURES:是的,它有效.我可以在测试开始之前运行灯具,但是问题(我的错误,不提它)是灯具有时需要几分钟才能加载,在测试开始前等待10分钟或更长时间是令人讨厌的.
BEGIN/ROLLBACK TRANSACTION:它既可以使用也可以使用.我没有收到任何错误,但测试期间写入的数据在结束时仍在我的数据库中.我在一个方法中添加了第一个标记为@BeforeScenario的方法,后者在一个用@AfterScenario标记的方法中
$this->kernel->getContainer()
->get('doctrine.orm.entity_manager')
->getConnection()
->beginTransaction();
$this->kernel->getContainer()
->get('doctrine.orm.entity_manager')
->getConnection()
->rollBack();
public function gatherContexts(BeforeScenarioScope $scope) {
$environment = $scope->getEnvironment();
$connection = $this->kernel->getContainer()->get('doctrine.orm.entity_manager')->getConnection();
$connection->beginTransaction();
$connection->createSavepoint('tests');
}
public function rollback(AfterScenarioScope $scope) {
$connection = $this->kernel->getContainer()->get('doctrine.orm.entity_manager')->getConnection();
$connection->rollbackSavepoint('tests');
}
所有这些测试都用于测试我的API REST项目.经过这些考虑后,我认为Behat和我的应用程序不共享实体管理器的相同实例.您是否能够在测试期间在测试和项目之间共享相同的实例?
我正在使用Razor开发MVC3应用程序.我在使用日期时遇到了麻烦,并在我的观点上加倍.我的Windows和Visual Studio都是英文版,但我想在"it-IT"中自定义项目的文化.我发现了几篇文章如何管理不同的文化,通过JQuery Validation插件或直接在页面上设置文化,但我很困惑!我想用于日期的格式是"DD/MM/YYYY",而双倍的格式是1.234,32.所以,
显然任何建议都会受到赞赏.我发布了我的项目代码:
Offerta.cs
[MetadataType(typeof(Offerta_Validation))]
public partial class Offerta
{
}
public class Offerta_Validation
{
[HiddenInput(DisplayValue = false)]
public int IDOfferta { get; set; }
[StringLength(300, ErrorMessage = "Campo troppo lungo")]
[Required(ErrorMessage = "Campo obbligatorio")]
public string Titolo { get; set; }
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:N2}")]
[Required(ErrorMessage = "Campo obbligatorio")]
[Price(MinPrice=0.01)]
public decimal PrezzoIniziale { get; set; }
[Required(ErrorMessage = "Campo obbligatorio")]
[Integer]
public int BuoniScontiMinimo { get; set; }
public string …Run Code Online (Sandbox Code Playgroud) 我是 Docker 新手,我正在尝试设置我的第一个项目。为了测试如何使用它,我只是克隆了一个现成的项目并设置了它(Project repo)。正如指南所说,如果我访问特定的 url,我就会到达主页。更具体地说,是一个 symfony 起始页。
此外,使用此命令
docker run -i -t testdocker_application /bin/bash
Run Code Online (Sandbox Code Playgroud)
我能够登录到容器。
我的问题是,如果我尝试通过 bash 进入应用程序文件夹,我与主机共享的文件夹是空的。
我尝试了另一个项目,但结果是一样的。
我错在哪里?
这里有一些关于我的环境的信息:
配置:
application:
build: code
volumes:
- ./symfony:/var/www/symfony
- ./logs/symfony:/var/www/symfony/app/logs
tty: true
Run Code Online (Sandbox Code Playgroud) 为什么我看不到在我的DbContext中添加的存储过程?DbContext由CTP5版本(带有POCO类)引入的模板生成.
我添加了本教程所述的存储过程:http: //thedatafarm.com/blog/data-access/checking-out-one-of-the-new-stored-procedure-features-in-ef4/
此外,我搜索了条目是否在我的上下文中添加,这些是结果:
<Function Name="GetClientsForEmailSend" Aggregate="false" BuiltIn="false" NiladicFunction="false" IsComposable="false" ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo" />
<FunctionImport Name="GetClientsForEmailSend" EntitySet="Client" ReturnType="Collection(DBMailMarketingModel.Client)" />
<FunctionImportMapping FunctionImportName="GetClientsForEmailSend" FunctionName="DBMailMarketingModel.Store.GetClientsForEmailSend">
Run Code Online (Sandbox Code Playgroud)
一个类似的问题是:
但我已经完成了所有的建议.
这是存储过程:
ALTER PROCEDURE GetClientsForEmailSend
AS
BEGIN
-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT OFF;
-- Insert statements for procedure here
SELECT *
FROM dbo.Client AS c
INNER JOIN Subscription AS i on c.IDClient = i.IDClient
WHERE c.Email is not null and c.Email <> …Run Code Online (Sandbox Code Playgroud) stored-procedures entity-framework entity-framework-ctp5 asp.net-mvc-3
symfony ×2
asp.net-mvc ×1
bdd ×1
behat ×1
c# ×1
culture ×1
docker ×1
doctrine-orm ×1
exif ×1
jpeg ×1
php ×1
ubuntu ×1
validation ×1