wuchenge

1244 经验值

我的用的5.4
read_at 在store时,自动填充了时间。请问大佬这是怎么回事?

这个问题刚解决。把@include('vendor.ueditor.assets') 这句话移到@section('js')里面就不会报了。

我就是用的5.4,在bootstrap.js里引入require('vue-resource');这句这可以了。

// 上传到upanyun
function up_upyun(Request $request)
{

$file = $request->file('file_data');
$entension = $file ->getClientOriginalExtension(); 
$new_name = date('His') . mt_rand(1001, 9999) . '.' . $entension;
$path = '/img/' . date('Y') . '/' . date('m') . '/' . $new_name;
$res = Storage::disk('upyun')->writeStream($path, fopen($request->file('file_data'), 'r'));

$data       = ['status' => false, 'msg' => '文件出错!'];
if($res)
  $data       = ['status' => true, 'msg' => '成功!', 'file_name' => env('UPYUN_PROTOCOL') . '://' . env('QINIU_DOMAIN') . $path];

return $data;

}
嗯这是刚刚整理的5.2上传代码。

5.2里这样可以上传成功。Storage::disk('upyun')->writeStream('files.jpg', fopen($request->file('file_data'), 'r'));

可能一:没有生成随机名。因为我传'/'报path is not a file, maybe a directory
可能二:put的第二个参数没有被实例。Storage::disk('upyun')->put('test.jpg', $request->file('file_data'));可以在upyun 上生成test.jpg,但是里面什么都没有。

不是。因为我上传到本地成功了
// 上传到upanyun

  function up_upyun(Request $request)
  {
    $input      = Input::all();
    $file       = Input::file('file_data');
    $state      = array_key_exists('state', $input) ? intval($input['state']) : 1;
    $res        = $file -> isValid();
    if($res)
    {
      //上传文件的后缀.
      $entension = $file -> getClientOriginalExtension(); 
      //这个表示的是缓存在tmp文件夹下的文件的绝对路径
      $real_path = $file -> getRealPath(); 
      // 缓存在tmp文件夹中的文件名 例如 php8933.tmp 这种类型的.
      $tmpName = $file ->getFileName(); 
      //文件类型
      //$mimeTye = $file -> getMimeType();
      //上传后的文件名
      $new_name       = date('His') . mt_rand(1001, 9999) . '.' . $entension;
      //文件路径
      $path           = '/uploads/images/article/' . date('Y') . '/' . date('m');
      $re_path        = public_path() . $path;

      //创建文件夹
      $this->_mk_dir($re_path);

      $res            = $file->move($re_path, $new_name);
      if($res)
      {
        //插入到图片表
        $src        = $path . '/' . $new_name;
        $data       = ['path' => $src, 'state' => $state, 'ctime' => $_SERVER['REQUEST_TIME']];
        Img::create($data);
        $data       = ['status' => true, 'msg' => '成功!', 'file_name' => $src];
      }
      else
      {
        $data       = ['status' => false, 'msg' => '文件出错!'];   
      }
      return $data;
    }
    else
    {
      $data   = ['status' => false, 'msg' => '文件出错!'];
      return $data;
    }
  }

// 上传到upanyun
  function up_upyun(Request $request)
  {
    return Storage::disk('upyun')->put('', $request->file('file_data'));
  return Storage::disk('upyun')->put('/', $request->file('file_data'));
  }

失败。
所以认为您这个packages应该有laravel版本要求。

不是,在5。2里
$entension = $file -> getClientOriginalExtension();

  //这个表示的是缓存在tmp文件夹下的文件的绝对路径
  $real_path = $file -> getRealPath(); 
  // 缓存在tmp文件夹中的文件名 例如 php8933.tmp 这种类型的.
  $tmpName = $file ->getFileName(); 
  //文件类型
  //$mimeTye = $file -> getMimeType();
  //上传后的文件名
  $new_name       = date('His') . mt_rand(1001, 9999) . '.' . $entension;
  //文件路径
  $path           = '/uploads/images/article/' . date('Y') . '/' . date('m');
  $re_path        = public_path() . $path;

我这样上传到本地是可以成功的。上传到upyun提示报错。不管是Storage::disk('upyun')->put('', $request->file('file_data'));还是Storage::disk('upyun')->put('/', $request->file('file_data'));
然而5。4就能成功上传到upyun

<form action="/images" enctype="multipart/form-data" method="POST" role="form">
                    <legend>上传图片</legend>
                    {csrf_field()}
                    <div class="form-group">
                        <label for="">label</label>
                        <input type="file" class="form-control" id="" name="file_data">
                    </div>

                    <div class="form-group">
                        <input type="submit" class="form-control" id="" value="上传图片">
                    </div>

                </form>
用laravel5.4成功了。
use Illuminate\Http\Request;

Route::get('/', function () {
    return view('welcome');
});


Route::post('/images', function (Request $request) {
    // return $request->file('file_data');
  return Storage::disk('upyun')->put('/', $request->file('file_data'));
});
laravel5.2
// 上传到upanyun
  function up_upyun(Request $request)
  {
    return Storage::disk('upyun')->put('', $request->file('file_data'));
  }

报错了。

"require": {

    "php": ">=5.5.9",
    "laravel/framework": "5.2.*",
    "jellybool/flysystem-upyun": "^1.0"
},

是直接composer您的github