小编Emi*_*lie的帖子

与映射的超类的关联映射

在我的供应商包中,我有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)

php symfony doctrine-orm

15
推荐指数
1
解决办法
1万
查看次数

使用Twitter Bootstrap的4列到2列

我有一个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本地实现此行为?

twitter-bootstrap

12
推荐指数
1
解决办法
5701
查看次数

使用 webpack 和 twig 覆盖 Vuetify SASS 变量

我有 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)

sass webpack vuetify.js webpack-encore

7
推荐指数
1
解决办法
2459
查看次数