在我的供应商包中,我有2个映射的超类:BaseSite和BaseSection(它们是抽象的).
在我的应用程序包中,我有2个实体扩展了2个映射的超类.到目前为止一切正常:我可以访问超类中定义的字段,如果需要,我可以在我的应用程序包中添加新的字段.
问题是当我试图定义这些实体之间的关联映射时.(BaseSection和BaseSite之间的manyToOne).如果我在BaseSection映射的超类中定义它,我可以运行该命令app/console doctrine:generate:entities AcmeDemoBundle
,但是当我尝试创建表时它不起作用:( app/console doctrine:schema:update --dump-sql
)
CREATE TABLE Section (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, siteId INT DEFAULT NULL, INDEX IDX_95E06DEFFADB670C (siteId), PRIMARY KEY(id)) ENGINE = InnoDB;
CREATE TABLE Site (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, PRIMARY KEY(id)) ENGINE = InnoDB;
ALTER TABLE Section ADD CONSTRAINT FK_95E06DEFFADB670C FOREIGN KEY (siteId) REFERENCES BaseSite(id) ON DELETE CASCADE
Run Code Online (Sandbox Code Playgroud)
如您所见,它尝试在不存在的表上引用外键(BaseSite而不是Site).我猜这是因为映射的超类不知道应用程序实体中定义的表名.
我可以在应用程序实体上定义关联映射,但这意味着如果有人想使用我的包,他将不得不自己定义映射,我想避免.
还有另一种方法可以做到这一点,或者我可能只是遗漏了什么?
这是我的代码:
供应商:
文件:vendor\bundles\Acme\DemoBundle\Resources\config\doctrine\BaseSite.orm.yml
Acme\DemoBundle\Entity\BaseSite:
type: mappedSuperclass
fields:
id:
type: integer …
Run Code Online (Sandbox Code Playgroud) 我有一个4列流体布局:
<div class="container-fluid">
<div class="row-fluid">
<div class="span3">A</div>
<div class="span3">B</div>
<div class="span3">C</div>
<div class="span3">D</div>
</div>
</div>
[ A ][ B ][ C ][ D ]
Run Code Online (Sandbox Code Playgroud)
对于移动设备,bootstrap将列呈现在另一个下面,这可以正常工作:
[ A ]
[ B ]
[ C ]
[ D ]
Run Code Online (Sandbox Code Playgroud)
但对于平板电脑,我想要2列2列:
[ A ][ B ]
[ C ][ D ]
Run Code Online (Sandbox Code Playgroud)
是否可以使用bootstrap本地实现此行为?
我有 Vuetify 2.2.11,我试图覆盖他们的 SASS 变量。我在 Symfony 3.x 项目中,所以我没有使用 vue-cli 安装 Vuetify。我遵循了Webpack 安装指南,但似乎无法使其正常工作。Vuetify 样式被转储到一个 css 文件(以我的 js: app.js
->命名app.css
),但不考虑我的覆盖。至于我的项目样式 ( company.scss
),它们被注入<style type="text/css">
到 html的标签中。还有一大堆空<style type="text/css"></style>
标签,我猜它们来自每个 Vuetify 组件,但我不知道为什么它们是空的。
这是我的代码的样子:
// /assets/js/app.js
import Vue from 'vue';
import vuetify from './plugins/Vuetify';
import FooComponent from './components/FooComponent;
import '../styles/company.scss';
const vmConfig = {
el: '#app',
vuetify,
components: {
FooComponent
},
};
new Vue(vmConfig);
Run Code Online (Sandbox Code Playgroud)
// /assets/js/plugins/Vuetify
import Vue from 'vue';
// We import from "lib" to enable the "a-la-carte" …
Run Code Online (Sandbox Code Playgroud)