小编Mar*_*tin的帖子

sql选择第二个表中没有关系的记录

我试图在MySQL数据库中的phpMyAdmin中运行SQL查询,以获取在另一个表中没有相应记录的记录.

例如

**album**
id, name

**track**
id, album_id, name
Run Code Online (Sandbox Code Playgroud)

我需要所有没有相对曲目记录的专辑记录.

我试过了

SELECT album.id
from album 
WHERE album.id NOT IN (
  SELECT track.album_id 
  FROM track 
  WHERE 1
  GROUP BY track.album_id
)
Run Code Online (Sandbox Code Playgroud)

但不幸的是,这会导致MySQL服务崩溃

我也试过了

SELECT a.id FROM album a
INNER JOIN track t
ON a.id = t.album_id
WHERE t.id IS NULL
Run Code Online (Sandbox Code Playgroud)

但这不能按预期工作(不返回结果)

mysql sql

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

在所有Yii视图中都有一个变量

我希望在我的大多数视图文件中都有一个变量$ user_profile,而不必在每个控制器文件中创建变量.目前我的工作正常,但我想知道是否有更好的解决方案

我有一些代码来填充变量

$user_profile = YumUser::model()->findByPk(Yii::app()->user->id)->profile;
Run Code Online (Sandbox Code Playgroud)

然后是父类

class Controller extends CController { 

    public function getUserProfile()
    {
      $user_profile = YumUser::model()->findByPk(Yii::app()->user->id)->profile;
    }

}
Run Code Online (Sandbox Code Playgroud)

然后我让所有其他控制器继承Controller类,例如

class DashboardController extends Controller
{

public function actionIndex()
{
    $user_profile = parent::getUserProfile();
    $this->render('index', array('user_profile' => $user_profile));

}

}
Run Code Online (Sandbox Code Playgroud)

然后最后在视图文件中我可以简单地访问$ user_profile变量.

php inheritance scope yii

5
推荐指数
1
解决办法
2767
查看次数

与Nelmio Alice的Symfony 4灯具不坚持

我在Symfony 4中使用Alice的数据夹具有问题.

当我运行bin/console doctrine:fixtures:load我被问到是否要清除db并最终命令终止而没有任何错误.

数据库被有效清除,但没有填充数据.

我正在使用Symfony 4.0.3,Doctrine Data Fixtures 1.3和Nelmio Alice 3.1.3.

SRC/DataFixtures/ORM/fixtures.yml

App\Entity\User:
user{1..10}:
    email: '<email()>'
Run Code Online (Sandbox Code Playgroud)

SRC/DataFixtures/ORM/LoadFixtures.php

namespace App\DataFixtures\ORM;

use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Common\Persistence\ObjectManager;
use Nelmio\Alice\Loader\NativeLoader;


class LoadFixtures extends Fixture
{
    public function load(ObjectManager $manager)
    {
        $loader = new NativeLoader();
        $objectSet = $loader->loadFile(__DIR__.'/fixtures.yml');

    }
}
Run Code Online (Sandbox Code Playgroud)

SRC /实体/ user.php的

namespace App\Entity;

use Symfony\Component\Security\Core\User\UserInterface;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="user")
 */
class User implements UserInterface
{
    /**
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     * @ORM\Column(type="integer")
     */
    private $id;
    /** …
Run Code Online (Sandbox Code Playgroud)

doctrine symfony nelmio-alice alice-fixtures symfony4

4
推荐指数
1
解决办法
2754
查看次数

MySQL 8 忽略整数长度

我有一个 MySQL 8.0.19 在 Docker 容器中运行并使用 InnoDB 引擎。我注意到表整数字段长度被忽略了。

无论是运行 CREATE 还是 ALTER 查询,整数数据类型都会出现此问题

CREATE TABLE `test` (
  `id` int DEFAULT NULL,
  `text_field` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `decimal_field` decimal(6,2) DEFAULT NULL,
  `int_field` int DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Run Code Online (Sandbox Code Playgroud)

长度在我的 MySQL 客户端 (Navicat) 中显示为 0,但如果使用SHOW FULL COLUMNS FROMtest在控制台中检查也会发生同样的情况;

mysql> SHOW FULL COLUMNS FROM `test`;
+---------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
| Field         | Type         | Collation          | Null | Key | Default | Extra | Privileges                      | Comment |
+---------------+--------------+--------------------+------+-----+---------+-------+---------------------------------+---------+
| …
Run Code Online (Sandbox Code Playgroud)

mysql sql innodb mysql-8.0

3
推荐指数
1
解决办法
2454
查看次数

mPDF未在新页面上添加页眉/页脚

本质上,页眉和页脚仅在我手动分页后显示在第一页和第一页上。

但是由于长HTML内容,页眉和页脚不会显示在任何自然延续的其他页面上。(即没有手册的地方)

<htmlpageheader name="header">Page Hader</htmlpageheader>
<htmlpagefooter name="footer"><p>Copyright <b>blablabla</b> 1999 - <?php echo date('Y') ?></p></htmlpagefooter>
Run Code Online (Sandbox Code Playgroud)

页眉+页脚将显示在此页面上

<sethtmlpageheader name="header" page="all" value="on" show-this-page="1" />
<sethtmlpagefooter name="footer" page="all" value="on" />


<p>(PDF cover)</p>
<h1>Report</h1>
Run Code Online (Sandbox Code Playgroud)

页眉+页脚将显示在第一页上,但不会显示在后续页上

<pagebreak />
<sethtmlpageheader name="header" page="all" value="on" show-this-page="1" />
<sethtmlpagefooter name="footer" page="all" value="on" />
LONG HTML CONTENT
THAT EXCEEDS PAGE SIZE
Run Code Online (Sandbox Code Playgroud)

php mpdf

2
推荐指数
2
解决办法
5770
查看次数

获取mPDF中文本的位置以确定HTML元素的垂直高度

我正在使用mPDF类生成PDF,并想知道是否以及如何确定生成mPDF的文档中最后一行文本的位置?

我需要一个HTML框来覆盖最后一行文本和文档底部边距之间的任何剩余空间.通过将html元素设置为height:100%,将元素推送到新页面并覆盖新页面的整个高度.

页面内容是根据许多因素动态生成的,因此我无法确定最后一行的垂直位置.

如果我知道最后一行的垂直位置,我可以从总页面高度中减去该值,然后通过CSS将该元素设置为具有该高度.

这可能还是有其他解决方案?

css php pdf mpdf

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

如何让Yii从已知用户生成下拉列表?

我刚刚开始学习使用yii,并且已经设法做了一些基本的东西.

假设我有两个简单的表:"用户"和"项目",其中关系是1到多(一个用户可以有很多项目)

我使用GII生成了CRUD,但是在"创建/编辑用户页面"中,这不提供下拉列表,而只提供我需要输入用户ID的文本字段.

在编辑项目时,我想有一个下拉列表,我可以在其中选择一个用户(因此该元素应该显示一个用户名列表).

我假设GII无法为此生成控制器和查看代码

这样做的最佳做法是什么?

我已按照http://www.yiiframework.com/doc/guide/1.1/en/database.arr中的说明声明了这些关系

public function relations()
{
   return array(
        'projects_rel'=>array(self::BELONGS_TO, 'Users', 'user_id'),
    );
}
Run Code Online (Sandbox Code Playgroud)

public function relations()
{
    return array(
        'users_rel'=>array(self::HAS_MANY, 'Projects', 'project_id'),
    );
}
Run Code Online (Sandbox Code Playgroud)

php activerecord non-relational-database yii

0
推荐指数
1
解决办法
6570
查看次数