2014-12-12 3 views
0

내 웹 응용 프로그램에서 사용자 다운로드를 추적하여 다운로드라는 테이블을 만들기로 결정했습니다. 내 모델에 이미 관계를 지정합니다. Laravel 4에서 사용자 트랙을 다운로드하는 방법은 무엇입니까?

<?php 

use Illuminate\Auth\UserTrait; 
use Illuminate\Auth\UserInterface; 
use Illuminate\Auth\Reminders\RemindableTrait; 
use Illuminate\Auth\Reminders\RemindableInterface; 

class Download extends Eloquent { 


    protected $table = 'downloads'; 


    // Relations 
    public function user(){return $this->belongsTo('User','user_id');} 
    public function catalog_downloads(){return $this->hasMany('CatalogDownload'); } 
    public function marketing_materials(){return $this->hasMany('Download'); } 


} 

Download.php

여기에 이미 downloads 테이블이 내 controller

public function file_download($id) 
    { 

     $catalog_download = CatalogDownload::findOrFail($id); 
     $distributor  = Auth::user()->distributor()->first(); 
     $export_type  = $distributor->export_type()->first(); 
     $product_export = $catalog_download->product_exports()->first(); 

     $destinationPath = base_path().'/app/files/product_export/'. $catalog_download->id.'/'. $export_type->id.'/'; 
     $file_name  = $product_export->file_path; 
     $pathToFile  = $destinationPath .$file_name; 

     if(Response::download()){ 

      $download = new Download; 
      $download->title = $catalog_download->title; 
      $download->count = $download->count + 1; 
      $download->user_id = Auth::user()->id ; 
      $download->save(); 

     } 

     return Response::download($pathToFile); 





    } 

중 하나에 내 download 기능입니다.

어떤 이유로 데이터가 데이터베이스에 저장되지 않았습니다. :(

누군가가 나이로 봐 도와 드릴까요

?

난 그냥 코드 블록을 추가

.

if(Response::download()){ 

       $download = new Download; 
       $download->title = $catalog_download->title; 
       $download->count = $download->count + 1; 
       $download->user_id = Auth::user()->id ; 
       $download->save(); 

      } 

나머지는 모두 맞습니다.

답변

2

당신이 return 문이 귀하의 코드 전에 도달 할 수 없다면 반환 후에 아무 것도 할 수 없습니다 ...

+1

맞아요, Junius. 맞아요, 쥬니 어 –

+0

나는 바보입니다. 고마워요. 다운로드가 진행되기 전에 로직을로드하십시오. 이 시점에서 무엇을해야합니까? 나는 제안을 원했다. Thanks @Junius – iori

+0

나는 그것을 내 return statement의 맨 위로 바꾼다. 그리고 그것은 여전히 ​​작동하지 않는다. : – iori

관련 문제