我正在使用Laravel 4在我的数据库中导入一堆csv条目.
我不能指出一个必须是唯一的列,它是5列的组合,使其独特.但是:如何在Laravel中定义这个?
选项1:模式构建器
您可以使用$ table-> unique('email')方法,但这似乎只允许一列,而不是列的组合.
选项2:验证
不太可取,但我可以在插入之前验证模型.但是,再次使用"unique:[table]"验证规则,当其中一个列值不唯一时,它将返回错误,而不是它们的组合.
谁能告诉我应该怎么做呢?
我确定我错过了一些东西,但我可以用正确的方向推动:-)
谢谢,
迪特
我们正在创建一个监控某些资产的SaaS.这意味着它接收数据,保存数据并将其显示在Web界面中.
为此,我们使用/创建的一些组件正在转移到Symfony2:
所有这四个应用程序共享相同的模型:我们的主数据库包含所有用户,监视器和数据.
我的问题是:我应该如何在Symfony2中构建这些项目?
选项1看起来有点奇怪,因为根据我的理解,捆绑需要路由,视图,控制器等.将它用于实体只会有点奇怪.
选项2似乎没问题,因为对于/ src文件夹中的所有内容,/ app文件夹无论如何都被视为"公共"(因为,例如,参数也驻留在那里).但是,那里没有'model'文件夹,我不确定应该有吗?
据我所知,Symfony 2已经很少有"最佳实践",因为它是全新的.但是在你看来,我想看看是否有更优先的做法和其他做法.
任何反馈都更受欢迎.提前致谢,
迪特
在Symfony2项目中,我有一个控制器,可以从数据库中检索许多事件.这些事件具有start_time,stop_time,type等属性.
在我看来,我想在一个表中显示这些事件,按start_time排序.我用Twig作为模板.
我可以在将其传递给Twig模板之前对我的控制器进行预先排序,但是控制器不应该关心视图是否要对它进行排序.例如,我创建的另一个模板可能希望按类型排序.
现在,有没有办法可以将事件对象的集合按原样提供给Twig模板,并让它在现场为我排序?也许用'| 排序'过滤,但后来用'| property(start_time)'在它前面过滤,如果你知道我的意思:-)
欢迎任何建议,提前谢谢!
迪特
我们有一个监控服务,我们的监控单元会关注某些机器.
我正在创建一个表单来在Symfony2中注册一台新机器.
所以我们有机器实体:
和监控实体:
对于新机器,客户需要填写表格:
现在,如果我用一个机器实体作为数据支持来制作一个表单,我就没有"字段"来询问序列号.Symfony不允许它,因为后备实体没有名为"序列号"的字段.
我怎么能够:
我想我可以:
我希望我能解释这一点.我想很多人都必须解决这个问题.我想我只是在寻找一些非常标准的Symfony功能,只是因为我不确定它叫什么:-)
我有一个数据库,我正在处理包含脉冲测量的数据库.
架构是这样的:
id - monitorid - starttime - stoptime - pulses
Run Code Online (Sandbox Code Playgroud)
每个监视器每10分钟提供一次信息.
目前,这相当于大约13 000 000行.
开始和停止时间是varchar(10),保存unix时间戳.可能不是我的情况最有效率.
几乎所有针对该表的查询都是'WHERE starttime> $ certaintime AND monitorid = $ monid'.所有这些查询目前都非常缓慢.
我有一个关于monitorid的索引.我还没有把它放在开始时间和停止时间上,因为我认为这会给我带来更好的基数,因为每10分钟的时间段是一个新值.我不确定这个推理.
所以,我的问题是:如何针对大多数面临的类似范围的查询优化此问题.索引启动时间?使用日期而不是时间戳重建表?
欢迎任何建议!
干杯,
迪特
symfony ×3
bundle ×1
coding-style ×1
forms ×1
indexing ×1
laravel ×1
laravel-4 ×1
model ×1
mysql ×1
performance ×1
php ×1
templates ×1
time-series ×1
twig ×1
validation ×1
view ×1