suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Beschreibung von Laravel: Aufruf einer Mitgliedsfunktion format() für einen String

Die Datentabelle hat ein expired_at-Feld und die Daten sehen so aus:


    public function store(Request $request)
    {
        $data=[
             'expired_at'=>Carbon::now()->addDays($publishing_days)->endOfDay()
        ];
        $article=Article::create(array_merge($request->all(),$data));
        
        return redirect('/artilces');
    }

Ansicht:

{{$article->expired_at->format('Y-m-d')}}

Fehler:

Call to a member function format() on string (View: D:\wnmp\www\laravel-5-3-dev\resources\views\artiles\index.blade.php)

Was ist los?

某草草某草草2813 Tage vor1298

Antworte allen(2)Ich werde antworten

  • PHPz

    PHPz2017-05-16 16:51:52

    这个错误信息本身已经告诉你了啊, expire_at是字符串, php中字符串是没有format方法的(其实没有任何方法, 因为string在php中不是对象)

    Antwort
    0
  • ringa_lee

    ringa_lee2017-05-16 16:51:52

    • 首先 expired_at 在数据库中 需要为 timestamp 或者 datetime 类型

    • 其次, 在Model 中将 此字段加入 $dates

    class Article extends Model {
        protected $dates = ['expired_at'];
    
    }

    然后就可以当Carbon调用了

    Antwort
    0
  • StornierenAntwort