Rails跳过/忽略链接的数据?

时间:2018-04-19 19:28:54

标签: ruby-on-rails

所以我在我的Rails应用程序中设置了以前的帖子链接,并在我的节目中有以下内容:

def previous
 SpudPost.where(["published_at < ?", published_at]).last
end

def next
 SpudPost.where(["published_at > ?", published_at]).first
end

然后在我的模型中我有:

import { Component, OnInit, Output, EventEmitter, Input } from '@angular/core';
import { ConceptService } from "app/services/rest/concept.service";

@Component( {
    selector: 'co-calculation',
    templateUrl: './co-calculation.component.html',
    styles: []
} )

export class CoCalculationComponent implements OnInit {

    dataSent: EventEmitter<any> = new EventEmitter();

    constructor( private conceptService: ConceptService ) { }

    ngOnInit() {}

    calculate(){
      this.conceptService.calculateCoDatabase().subscribe( (response:any) => {

            this.dataSent.emit(response);

           }); } }

我想要做的只是将以前的链接转到那些被标记为具有blog_key的博客帖子,该博客标记为博客并标记为可见。如果它不是博客/假,那么忽略它并转到下一个说博客和可见的。

问题在于它没有进入下一个说博客/真的。如果下一个说blog_key =='news',那么它适用于'Home'。它应该只是前一个/下一个方法中的另一个过滤器吗?

1 个答案:

答案 0 :(得分:0)

模型效果更好。

def previous
 SpudPost.where(blog_key: 'blog').where(visible: true).where(['published_at < ?', published_at]).last
end

def next
 SpudPost.where(blog_key: 'blog').where(visible: true).find_by(['published_at > ?', published_at])
end