小编Sna*_*oil的帖子

如何按DQL中的计算值排序

我正在尝试通过它们是否与属性上的原始实体匹配来对查询结果进行排序.我可以使用以下查询在mySQL中轻松完成此操作:

SELECT * FROM table
ORDER BY prop = 'value' DESC;
Run Code Online (Sandbox Code Playgroud)

但是,在Doctrine中,当我尝试以下操作时:

// $qb is an instance of query builder
$qb->select('e')
   ->from('Entity', 'e')
   ->orderBy('e.prop = :value', 'DESC')
   ->setParameter('value', 'value');
// grab values
Run Code Online (Sandbox Code Playgroud)

我得到一个Doctrine语法错误,'结束字符串'.我研究了创建一个自定义函数,但这看起来有点过分.我对Doctrine很新,有没有更好的方法呢?

dql doctrine-orm

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

Angular 2路由器在Resolve中使用BehaviorSubject Observable

我正在尝试使用Resolve设置我的路由器配置,它从BehaviorSubject返回一个Observable.我在角度4.0.0-beta8和角度2.4.8 +路由器3.4.8中尝试了这个

这是我的服务:

@Injectable()
export class MyService {
    private _data: BehaviorSubject<Array<string>> = new BehaviorSubject(undefined);

    constructor() {}

    public getData(): Observable<Array<string>> {

        this._data.next(['test1', 'test2', 'test3']);

        let asObservable = this._data.asObservable().delay(1000);
        asObservable.subscribe((myData) => {
            console.log([myData, 'this console message DOES show up']);
        });

        // if I return here, my component's constructor and ngOnInit never fire
        // return asObservable;

        let fakeObservable = Observable.of(['test1', 'test2', 'test3']).delay(1000);
        fakeObservable.subscribe((fakeData) => {
            console.log([fakeData, 'this console message shows up']);
        });

        console.log([asObservable, fakeObservable]);
            /* console log output
            Observable {
                _isScalar: false,
                operator: …
Run Code Online (Sandbox Code Playgroud)

observable angular2-routing angular2-observables angular

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