我有一个模型CourseModule,每个项目都与相同的模型相关.
public function parent()
{
return $this->belongsTo('App\CourseModule','parent_id')->where('parent_id',0);
}
public function children()
{
return $this->hasMany('App\CourseModule','parent_id');
}
Run Code Online (Sandbox Code Playgroud)
我尝试了以下内容,但它只返回一个级别的关系.
CourseModule::with('children')->get();
Run Code Online (Sandbox Code Playgroud)
我正在尝试创建一个类似于以下的json输出,
[
{
"id": "1",
"parent_id": "0",
"course_id": "2",
"name": "Parent",
"description": "first parent",
"order_id": "1",
"created_at": "-0001-11-30 00:00:00",
"updated_at": "-0001-11-30 00:00:00",
"children": [
{
"id": "2",
"parent_id": "1",
"course_id": "2",
"name": "Child 1",
"description": "child of parent",
"order_id": "2",
"created_at": "-0001-11-30 00:00:00",
"updated_at": "-0001-11-30 00:00:00",
"children": [
{
"id": "3",
"parent_id": "2",
"course_id": "2",
"name": "Child2", …Run Code Online (Sandbox Code Playgroud) 出于性能原因,
我很好奇是否有一种方法来叠加一堆矩阵的堆栈.我有一个4-D阵列(500,201,2,2).它基本上是500长度的(201,2,2)矩阵堆栈,对于500中的每一个,我想用einsum乘以相邻的矩阵,得到另一个(201,2,2)矩阵.
我只在最后的[2x2]矩阵上进行矩阵乘法.由于我的解释已经脱轨,我只会展示我现在正在做的事情,以及"减少"等效物以及为什么它没有帮助(因为它的计算速度相同).优选地,这将是一个numpy单行,但我不知道那是什么,或者即使它是可能的.
Arr = rand(500,201,2,2)
def loopMult(Arr):
ArrMult = Arr[0]
for i in range(1,len(Arr)):
ArrMult = np.einsum('fij,fjk->fik', ArrMult, Arr[i])
return ArrMult
def myeinsum(A1, A2):
return np.einsum('fij,fjk->fik', A1, A2)
A1 = loopMult(Arr)
A2 = reduce(myeinsum, Arr)
print np.all(A1 == A2)
print shape(A1); print shape(A2)
%timeit loopMult(Arr)
%timeit reduce(myeinsum, Arr)
Run Code Online (Sandbox Code Playgroud)
True
(201, 2, 2)
(201, 2, 2)
10 loops, best of 3: 34.8 ms per loop
10 loops, best of 3: 35.2 ms per loop
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.事情是有用的,但是当我不得不在一大堆参数上迭代时,代码往往需要很长时间,而我想知道是否有办法避免循环中的500次迭代.
我已经展示了一些显示问题的截图...
我正在尝试使用只有表格打印此页面,如图所示,打开侧窗格我已将该侧窗格放入print-hidden并且它正在工作直到版本Google Chrome 46.0.2490.71但在css的下一次更新后无法正常工作.@media printmargin
目前我的谷歌Chrome版本是 48.0.2564.23
新版本的chrome显示边距,如打印预览图像所示,此问题仅在Chrome浏览器中出现,它在所有其他浏览器中正常工作
我不明白为什么新版本的chrome会占用print-hiddendiv的余量...... !!
重要的是它没有在chrome最新更新中工作,否则它很好.
如果有人在最新的chrome更新中发现了打印问题,请告诉我任何人都有解决方案.
您可以询问是否有任何问题需要了解我的问题.
谢谢...
我试图给出负左边距但在这种情况下所有其他浏览器的打印预览都不合适
在JsFiddle我已经使用了css属性,margin-left但它在Chrome最新版本中没有工作47它在旧版本中运行良好,Google Chrome 46.0.2490.71但在下一次更新中它是其他浏览器中的大问题它正常工作非常顺利...
+------------------------------+
| id name updated_at|
+------------------------------+
Run Code Online (Sandbox Code Playgroud)
+------------------------------------+
| id album_id member_id |
+------------------------------------+
Run Code Online (Sandbox Code Playgroud)
+--------------------------------+
| id album_id link |
+--------------------------------+
Run Code Online (Sandbox Code Playgroud)
$limit = 30;
$member_id = 1;
SELECT a . *,
(SELECT GROUP_CONCAT(CONCAT('$assets/album_image/medium/', ds_album_media.link) SEPARATOR ',') as link
FROM ds_album_media WHERE ds_album_media.album_id = a.id ORDER BY a.updated_at desc LIMIT 0 , 5)
AS photo_link FROM `ds_album` a
LEFT JOIN ds_album_media amd ON amd.album_id = a.id
LEFT JOIN ds_album_member amb ON amb.album_id = a.id
where amb.member_id = " …Run Code Online (Sandbox Code Playgroud) 我有一个自定义的Blade指令,我试图在其中包含一部分使用Blade语法@include().问题是我有一个自定义视图命名空间:
\Blade::directive('name', function() {
$viewsNamespace = 'viewsNameSpace::';
$formPartial = $viewsNamespace . 'partials._form';
return "{{ @include({$formPartial}) }}";
});
Run Code Online (Sandbox Code Playgroud)
这输出错误,
Class 'viewsNameSpace' not found
因为它的解释viewsNameSpace::是一个阶级.
这只输出字符串而不解析它:
return "@include('{$formPartial}')";
Run Code Online (Sandbox Code Playgroud)
这不是抛出任何错误,但它没有加载部分:
return "{{ @include('{$formPartial}') }}";
Run Code Online (Sandbox Code Playgroud)
请注意,当我在这样的模板中使用时,部分工作正常:
@include('viewsNameSpace::partials._form')
Run Code Online (Sandbox Code Playgroud)
但是我无法从指令中恢复正常.
任何帮助和建议将不胜感激!谢谢!
我有以下使用情况的问题提前键入:
因此,故事的道德是在第一种情况下,如果未从列表中选择字符串并且它是列表字符串的子字符串,则应该清除字符串...
那么,也许是一个类型搜索焦点设置?
<input type="text" focus-me="opened" ng-focus="onFocus($event)" ng-show="opened" ng-trim="false" ng-model="selected" empty-typeahead typeahead="state for state in states | filter:$viewValue:stateComparator" class="form-control" />
Run Code Online (Sandbox Code Playgroud)
(function () {
var secretEmptyKey = '[$empty$]'
angular.module('plunker', ['ui.bootstrap'])
.directive('focusMe', function($timeout, $parse) {
return {
//scope: true, // optionally create a child scope
link: function(scope, element, attrs) {
var model = $parse(attrs.focusMe);
scope.$watch(model, function(value) {
if(value === true) {
$timeout(function() {
element[0].focus();
});
}
});
}
};
})
.directive('emptyTypeahead', function …Run Code Online (Sandbox Code Playgroud) typeahead angularjs angular-ui-bootstrap angular-ui-typeahead
我首先说我真的很新,angularJs我觉得它对Web应用程序的大环境非常有用.
经过一些研究和文档记录后,我得到了一些问题,首先它让我对如何将它实现到服务器端语言(在我的情况下基于laravel 4.1的PHP)感到困惑,因为它angularJs有路由和模板等...所以它是一个适当的框架,甚至可以独立工作.
让我们更好地了解我想要到达的地方,以了解这个2框架的工作流程.
第一个问题
我如何在一些资源上看到angularJs很容易在json中显示结果并与dom绑定.我甚至看到一些开发人员在第一次加载dom时使用angularJs打印出结果,而不是在laravel控制器上使用单个函数并使用laravel处理结果.
我认为它在兼容性方面不是很有用,因为角度正在工作IE 8及之后如果我禁用javascript同样我看不到结果.相反,如果我使用laravel 4如何第一个处理程序的第一个结果,我将永远看到它!这是我看到的一个例子.
路线Laravel
// set 2 types of route, the first for get the json results for do handle to Angular
// the second route for display the view
Route::get('users','UserController@getUsers');
Route::get('/','UserController@getIndex);
Run Code Online (Sandbox Code Playgroud)
UserController Laravel
public function getUsers() {
$users = User::all();
return $users; // return all users in json
}
public function getIndex() {
return View:make('index');
}
Run Code Online (Sandbox Code Playgroud)
AngularJs
module.controller('UserCtrl', function($scope,$http) {
users: function() {
return $http.get('/users').then(function(result){
return result.data;
});
}; …Run Code Online (Sandbox Code Playgroud) 我目前正在尝试将dropzone.js Doc Ref实施到我的应用程序中.但是因为我已经设法运行了dropzone.js的基本功能
我想自定义preview-template隐藏并在不同的应用程序状态下显示上传进度条.
我可以preview-template通过在初始化dropzone实例期间将html字符串传递给options对象来自定义.正如dropzone.js文档中所述但显然,vue如果我简单地将它洒在这个html字符串上,那么语法就不会被处理.它必须以某种方式处理以实现该事物.
我想做的是vue.js在这个预览模板中使用语法.这是我正在谈论的组件.
<dropzone id="myVueDropzone" :use-custom-dropzone-options=true
:dropzoneOptions="dzOptions"
:url="photosForm.uploadImageUrl"
v-on:vdropzone-removed-file="deleteImage"
:preview-template="templatePreview"
v-on:vdropzone-success="showSuccess">
</dropzone>
Run Code Online (Sandbox Code Playgroud)
import Dropzone from 'vue2-dropzone';
export default {
methods: {
templatePreview(){
return `
<div class="dz-preview dz-file-preview">
<div class="dz-image" style="width: 200px;height: 180px">
<img data-dz-thumbnail />
</div>
<div class="dz-details">
<div class="dz-size"><span data-dz-size></span></div>
<div class="dz-filename"><span data-dz-name></span></div>
</div>
<div class="dz-progress"><span class="dz-upload" data-dz-uploadprogress></span></div>
<div class="dz-error-message"><span data-dz-errormessage></span></div>
<div class="dz-success-mark"><i class="fa fa-check"></i></div>
<div class="dz-error-mark"><i class="fa fa-close"></i></div> …Run Code Online (Sandbox Code Playgroud) 我暂时没有看到眼睛..下面的代码引发了一个错误
错误:value.split不是函数
是一种分裂简单字符串的angularjs方式
var value = "7,9";
$scope.getTemplate = function(value){
var values = value.split(",");
value1 = values[0];
value2 = values[1];
$scope.templateid = value1;
$scope.userid = value2;
}
Run Code Online (Sandbox Code Playgroud) 我有以下非常大的(~10e8记录)表(table):
+--------------------------------+ | id order value | +--------------------------------+ | PK int int | | 1 1 1 | | 2 2 5 | | 3 2 | | 4 2 0 | +--------------------------------+
如您所见,value列只能包含非负整数或null.现在,我需要编写一个返回没有a的订单的查询value > 0(即order = 2不保存条件,因为有记录value = 5).
该反向查询很简单:
SELECT order
FROM table
WHERE value > 0
Run Code Online (Sandbox Code Playgroud)
查询的性能对我来说是令人满意的.
但我们不能写
SELECT order
FROM table
WHERE value = 0
Run Code Online (Sandbox Code Playgroud)
因为有可能有一个具有相同订单的记录,但有value > 0.我能找到写这个查询的唯一方法是:
SELECT order
FROM table
GROUP BY …Run Code Online (Sandbox Code Playgroud) angularjs ×3
laravel ×3
php ×3
eloquent ×2
laravel-5 ×2
laravel-5.1 ×2
ajax ×1
arrays ×1
blade ×1
css ×1
dropzone.js ×1
javascript ×1
laravel-4 ×1
mysql ×1
numpy ×1
performance ×1
postgresql ×1
printing ×1
python ×1
sql ×1
typeahead ×1
vue.js ×1
vuejs2 ×1