小编Gun*_*ney的帖子

Laravel 5.3创建模型返回"字段没有默认值"

我正在使用Laravel和Eloquent两年,今天我决定安装一个新的Laravel 5.3并尝试使用它.

我使用了我的旧数据库模式并创建了我的模型,定义了可填充的列.这就是我的Page模型:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Page extends Model
{

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
        'language',
        'title',
        'slug',
        'url',
        'description',
        'tags',
        'wireframe',
        'order',
        'is_active'
    ];

    public function menus()
    {
        return $this->belongsToMany(Menu::class);
    }
}
Run Code Online (Sandbox Code Playgroud)

url属性是TEXTMySQL上的一个类型列,所以如果我在创建模型时没有传递任何值,它应该是一个空字符串.相反,我一直在收到SQLSTATE[HY000]: General error: 1364 Field 'url' doesn't have a default value错误.

这是我尝试创建Post模型:

Page::create([
    'title' => $root_menu['title'],
    'slug' => $root_menu['slug'],
    'language' => $this->language,
    'wireframe' => key(config('cms.wireframe')), …
Run Code Online (Sandbox Code Playgroud)

php mysql laravel laravel-5 laravel-5.3

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

是否有更短的方式来刷新div

我的页面中有一些元素,我需要每5秒刷新一次内容.我要向你展示的代码运行良好,但它看起来很长并重复自己.当我只使用setInterval函数时,在间隔到来之前页面没有定期加载.你能建议一个更好的方法吗?提前致谢.这是我的代码:

var $song=$(".song");
var $album=$(".album");
var $cover=$(".cover");
var $background=$(".overlay-bg");
$.ajax({
    url: "song.php",
    success: function (response) {
        var nowPlaying=$.parseJSON(response);
        $song.html(nowPlaying.song);
        $album.html(nowPlaying.album);
        $cover.css("background-image", "url("+nowPlaying.cover+")");
        $background.css("background-image", "url("+nowPlaying.cover+")");
    }
})
var refreshSongDetails=setInterval(function() {
    $.ajax({
        url: "song.php",
        success: function (response) {
            var nowPlaying=$.parseJSON(response);
            $song.html(nowPlaying.song);
            $album.html(nowPlaying.album);
            $cover.css("background-image", "url("+nowPlaying.cover+")");
            $background.css("background-image", "url("+nowPlaying.cover+")");
        }
    })
}, 5000);
Run Code Online (Sandbox Code Playgroud)

javascript ajax jquery

4
推荐指数
1
解决办法
117
查看次数

为什么Swift的AVPlayer在一次播放中加载playerItem两次?

我正在使用AVFoundation的AVPlayer来传输外部mp3文件.我在后端有一个计数器,它计算文件加载的次数.这项服务的唯一客户端只有我,每当我触发播放AVPlayer时,计数器增加两个,这意味着AVPlayer发出两次请求.这有什么理由,或者我怎样才能防止这种情况发生?这是我的代码:

@IBAction func listen(sender: UIButton) {
    let urlstring = "http://api.server.com/endpoint-to-mp3"
    let url = NSURL(string: urlstring)

    let playerItem = AVPlayerItem(URL: url!)

    let player = AVPlayer(playerItem: playerItem)

    let playerLayer = AVPlayerLayer(player: player)
    playerLayer.frame = CGRectMake(0, 0, 300, 50)
    self.view.layer.addSublayer(playerLayer)

    player.volume = 1.0
    player.play()
}
Run Code Online (Sandbox Code Playgroud)

avfoundation ios avplayer swift

3
推荐指数
1
解决办法
904
查看次数