小编Ard*_*rda的帖子

如何使用Eloquent过滤数据透视表?

我正在使用我正在使用的项目上的数据透视表来获取用户的作品.

例如:User::find(1)->works给我ID为1的用户的作品.

问题是我想用额外的Pivot数据过滤这个结果.

就像是:

User::find(1)->works->pivot->where('active',1)->get();
Run Code Online (Sandbox Code Playgroud)

其中active是我在user_works数据透视表中设置的列.

这是我的User.php模型的相关部分:

<?php

class User extends Cartalyst\Sentry\Users\Eloquent\User {

    public function works() {
        return $this->belongsToMany('Work','user_works')->withPivot('active')->withTimestamps();
    }

}
Run Code Online (Sandbox Code Playgroud)

这是我的Work.php模型的相关部分:

<?php

class Work extends Eloquent {

    public function users() {
        return $this->belongsToMany('User','user_works')->withPivot('active')->withTimestamps();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的数据透视表模式:

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;

class CreateUserWorksTable extends Migration {

    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('user_works', function(Blueprint $table) {
            $table->increments('id');

            $table->integer('user_id')->unsigned()->default(0);
            $table->integer('work_id')->unsigned()->default(0);

            $table->enum('active',array('0','1'))->default(1);

            $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
            $table->foreign('work_id')->references('id')->on('works')->onDelete('cascade');

            $table->timestamps();
        });
    }

    /**
     * Reverse the …
Run Code Online (Sandbox Code Playgroud)

filtering pivot-table laravel eloquent laravel-4

29
推荐指数
3
解决办法
5万
查看次数

在PHP中查询缓存以获得mySQL性能

我正在寻找一个系统来缓存已编码的项目(使用PHP),该项目具有注册和登录系统等功能.

我已经搜索了一些缓存解决方案,但我读到如果我使用这些功能,登录和发布系统将失败.

我真正需要的是存储一些特定数据库查询的结果,如果有缓存,调用结果,如果没有生成新缓存,并在每x分钟重新缓存它们.(结果可以存储在txt等中).

我怎样才能做到这一点?

顺便说一下,将query_cache_type设置为1不起作用.我正在寻找替代解决方案.

谢谢

php mysql caching

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

WordPress将媒体上传到帖子问题

我正在努力摆脱WordPress 3.8.1上的错误.

它说,每当我尝试将媒体上传到帖子时,它都不会添加An error occurred in the upload. Please try again later..

但更奇怪的是,即使在此问题之后,它也会显示在仪表板/媒体/库中.

我也看不到上传的附加媒体到我的帖子(编辑帖子/ [添加媒体按钮])/媒体库/上传到这篇文章,但在仪表板/媒体/库部分,这些旧的上传图像显示正确显示上传到什么帖子.

我试过以下几点:

  • 从更新管理器和手动重新安装我的本地版本和en_US
  • 删除wp-includeswp-admin文件夹并手动替换它们.
  • 我检查了wp-content/uploads文件夹的chown和chmod .为了确保它们正常工作,我删除了wp-content/uploads/2014文件夹,并在首次上传后显示此错误,该文件夹是使用右chown和chmod创建的,文件在那里(wp-content/uploads/2014/01/26/file with resolutions.jpg)
  • 我已删除不需要的插件,停用所有插件和主题,切换回WordPress的默认插件,我甚至从SQL重置活动插件json对象wp_options,没有帮助.
  • 我启用了php错误日志,没有显示相关内容
  • 我已经改变了WP_DEBUG定义true,我甚WP_DEBUG_DISPLAY至已经定义了true,没有任何帮助.
  • 当我尝试添加时wp-admin/media-new.php,使用多上传器,文件在" Crunching…"步骤冻结,但旧浏览器上传工作完美无缺.
  • 我正在管理VPS并使用CentOS 6.5 x64自己托管博客.safe_mode被设为off.mod_security我的php.ini中没有选项.我upload_max_filesizephp.ini被设置为20M,memory_limit256M,只有3个站点都托管和记忆是相当空的,而测试这些.即使使用50kb .jpg图像也会发生这种情况,所以这不应该相关.
  • 我已经从一个干净的下载拉链重新上传了所有的wordpress文件,没有帮助.
  • 我已经尝试添加AddType x-mapp-php5 .php .php4这里.htaccess建议的结尾,这根本没有帮助. …

media wordpress upload file-upload centos

6
推荐指数
1
解决办法
1973
查看次数

CodeIgniter使用轴调整大小和裁剪

我在CodeIgniter的项目中有一个图像裁剪器,它像picresize.com一样裁剪图像(我正在使用jCrop).它适用于下面给出的香草代码:

<?php
$save_to = $this->config->item('images_gallery_thumb_folder').$data['photo_image'];

$targ_w = $this->config->item('gallery_thumb_width');
$targ_h = $this->config->item('gallery_thumb_height');
$src = $this->config->item('images_gallery_folder').$data['photo_image'];

$types = array(1 => 'gif', 'jpeg', 'png');
list($width,$height,$type) = getimagesize($src);

switch ($types[$type]) {
    case 'jpeg':
        $img_r = imagecreatefromjpeg($src);
        break;
    case 'gif':
        $img_r = imagecreatefromgif($src);
        break;

    case 'png':
        $img_r = imagecreatefrompng($src);
        break;

    default:
        $img_r = imagecreatefromjpeg($src);
        break;
}

$dst_r = ImageCreateTrueColor($targ_w,$targ_h );

imagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'],
    $targ_w,$targ_h,$_POST['w'],$_POST['h']);


switch ($types[$type]) {
    case 'jpeg':
        imagejpeg($dst_r, $save_to, 90); //90 = jpeg quality
        break;
    case 'gif': …
Run Code Online (Sandbox Code Playgroud)

php codeigniter image-processing jcrop

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

HasManyThrough具有一对多的关系

我正在为一个项目的小规模CMS工作,如下所示:

- pages
    - id
    …
- translations
    - page_id
    …
- menus
    - id
    …
- menu_page
    - menu_id
    - page_id
    …
Run Code Online (Sandbox Code Playgroud)

在菜单模型中我有这样的关系:

function pages(){
    return $this->hasMany('Page');
}
Run Code Online (Sandbox Code Playgroud)

是否可以直接在Menu和Translations之间创建一个转换为类似SQL查询的关系:

select translations.* 
from translations
inner join menu_page on menu_page.page_id = translations.page_id
where menu_page.menu_id = ?;
Run Code Online (Sandbox Code Playgroud)

谢谢!

laravel eloquent

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

jquery递归函数中奇怪的无限循环错误

我正在处理的项目中有一个奇怪的问题.这会自动更改图像源和div的内容.

我编写了一个函数,但是它陷入无限循环并且页面没有加载(页面总是显示加载页面).

这些是代码:

$.fn.extend({
    changehaber: function(a){
     $('#cokokunanlarcontent').fadeOut('slow',function() {
           $('.jquerycokokunanlarbutton').attr('src','images/sabah/buton-pasif.png');
           $('img[rel="'+a+'"]').attr('src','images/sabah/buton-aktif.png'); 
        }).html($('#'+a).html()).fadeIn('slow');
        return this;
    }
});

function slidecokokunanlar() {
    $('#cokokunanlarcontent').html($('#cokokunanlar1').html()).delay(3000).changehaber('cokokunanlar2').delay(3000).changehaber('cokokunanlar3').delay(3000).changehaber('cokokunanlar4').delay(3000).changehaber('cokokunanlar5').delay(3000);
    slidecokokunanlar();
}

slidecokokunanlar();
Run Code Online (Sandbox Code Playgroud)

这里有什么问题,当执行它时,我希望函数无限工作,但页面显示它总是加载.这是控制台的输出:

Uncaught RangeError: Maximum call stack size exceeded
Run Code Online (Sandbox Code Playgroud)

提前致谢

javascript jquery loops

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

加入两个表,但如何显示所有结果?

我有两个这样的表结构:

episodes (
episode_id MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT,
episode_series_id MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
episode_series_season TINYINT(2) UNSIGNED NOT NULL DEFAULT '0',
episode_series_episode SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
episode_title VARCHAR(200) NOT NULL DEFAULT '',
PRIMARY KEY (episode_id),
KEY series_id (episode_series_id),
KEY episode_series_season (episode_series_season),
KEY episode_series_episode (episode_series_episode)
) ENGINE=MyISAM;

watchlist (
watchlist_id MEDIUMINT(8) UNSIGNED NOT NULL AUTO_INCREMENT,
watchlist_user_id MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
watchlist_series_id MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
watchlist_series_episode_id MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
watchlist_status …
Run Code Online (Sandbox Code Playgroud)

mysql sql join

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