这是一个搜索功能,可以返回每个成员注册的最近年份.
我让它使用DB :: raw()调用.但无法让它与查询构建器一起使用.
工作守则:
$query = DB::table('membership as m');
$query->join(
DB::raw(
'(SELECT my.*
FROM membership_years my
INNER JOIN (
SELECT member_id,MAX(membership_year) AS max_my
FROM membership_years
GROUP BY member_id
) my2
ON my.member_id = my2.member_id
AND my.membership_year = my2.max_my
) my'
)
,'m.id','=','my.member_id');
Run Code Online (Sandbox Code Playgroud)
我对查询构建器代码的尝试:
$query = DB::table('membership as m');
$query->join('membership_years as my',
function($j1){
$j1->join('membership_years as my2',
function($j2){
$j2->where('my.membership_year','=','MAX(my2.membership_year)')
->on('my.member_id','=','my2.member_id');
}
)->on('m.id','=','my.member_id');
}
);
Run Code Online (Sandbox Code Playgroud)
产生的错误是:
调用未定义的方法Illuminate\Database\Query\JoinClause :: join()
我不确定这是否因为$j2
无法再访问join方法了?
原始MySQL查询:
SELECT my.membership_year,m.*
FROM membership AS m
INNER JOIN
( …
Run Code Online (Sandbox Code Playgroud) 我正在使用 Angular 2 开展一个项目,但遇到了一个问题。我创建了一个链接组件,我可以这样使用它:
<cmp-link [routeName]="['Channel/Add']">Add channel</cmp-link>
该组件检查当前路由是否与通过参数传递的路由相同,如果是,则应用一个类。如何检查当前 url 是否与 提供的 url 相同routeName
?好吧,它很丑。
this.isCurrentRoute = this.normalize(currentUrl) === this.routeName[0].toLowerCase();
Run Code Online (Sandbox Code Playgroud)
你不喜欢吗?我也不。我想检查当前是否使用路线名称激活了路线。
(在这种情况下,Channel/Add
是路由名称)。
我不知道如何使用路线名称来做到这一点。我看过Router
和Instruction
。
到目前为止,这是我的BottomSheetFragment。我需要在bottomSheet 中添加一个偏移marginBottom。在其视图上设置边距,添加:
@Override
public void setupDialog(Dialog dialog, int style) {
super.setupDialog(dialog, style);
View contentView = View.inflate(getContext(), R.layout.layou_menu_more, null);
dialog.setContentView(contentView);
BottomSheetBehavior<View> mBottomSheetBehavior = BottomSheetBehavior.from(((View) contentView.getParent()));
if (mBottomSheetBehavior != null) {
mBottomSheetBehavior.setBottomSheetCallback(mBottomSheetBehaviorCallback);
mBottomSheetBehavior.setHideable(true);
contentView.requestLayout();
}
View bottomSheet = dialog.findViewById(R.id.bottom_sheet);
FrameLayout.LayoutParams params=new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
params.setMargins(0,0,0,90);
bottomSheet.setLayoutParams(params);
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Dialog dialog = super.onCreateDialog(savedInstanceState);
dialog.setOnShowListener(new DialogInterface.OnShowListener() {
@Override
public void onShow(DialogInterface dialogINterface) {
dialog.getWindow().setLayout(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.MATCH_PARENT);
// dialog.getWindow().setGravity(Gravity.RIGHT);
}
});
return dialog;
}
Run Code Online (Sandbox Code Playgroud)
创建此视图:
如您所见,90dp 的边距最终作为BottomSheet 的填充。如何申请偏移marginBottom
到 …
我最近开始在ASP.NET Web API中使用Ember.js.我很难从服务器加载模型.但现在我拥有它,我想从视图中的商店获取模型.目前我正在开发一个日历应用程序.这是逻辑,
App.IndexRoute = Ember.Route.extend({
//setupController: function (controller) {
// // Set the IndexController's `title`
// this.controllerFor('application').set('model', App.application.options);
//}
model: function () {
return this.store.findAll('eventList');
},
setupController: function (controller, model) {
this.controllerFor('index');
// controller.set('model', App.Events.findAll());
}
});
Run Code Online (Sandbox Code Playgroud)
控制器:
App.IndexController = Ember.ArrayController.extend({
sortProperties: ['eventId'],
sortAscending: false,
//events: Ember.computed.alias('model')
});
Run Code Online (Sandbox Code Playgroud)
模型
App.EventList = DS.Model.extend({
eventId: DS.attr('string'),
title: DS.attr('string'),
start: DS.attr('string'),
end: DS.attr('string'),
allDay: DS.attr('string')
});
App.EventListSerializer = DS.WebAPISerializer.extend({
primaryKey: 'eventId',
});
Run Code Online (Sandbox Code Playgroud)
终于看到了
/// <reference path="../../@JSense.js" />
App.IndexView = Ember.View.extend({
didInsertElement: function …
Run Code Online (Sandbox Code Playgroud) 如下图所示.我有一个relative layout
.我有我ImageView
的相同,我需要在视图开始和这个ImageView之间获得像素差距.我的活动如下.请指教.我试过各种各样的方法,topY()
但找不到解决办法.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<LinearLayout
android:id="@+id/main_ruler_linear_layout"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:orientation="horizontal"
>
</LinearLayout>
<ImageView
android:id="@+id/line_image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/line"/>
<EditText
android:id="@+id/txtRulerCenterPosition"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/main_ruler_linear_layout"
android:layout_marginRight="17dp"
android:layout_marginTop="16dp"
android:ems="10"
android:textSize="5dp"
android:focusable="false"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud) 在SQL Server中运行以下命令的正确方法是什么?
Execute myStore @dept='dept1',@dept='dept2'
Run Code Online (Sandbox Code Playgroud)
要么
Execute myStore @dept in ('dept1','dept2')
Run Code Online (Sandbox Code Playgroud) var _Contact = new ContactLstModel {
ContactName="xxxxxx",
EmailAddr="yyyyyy",
ContactNo="ddddddd",
SelectedContactType="dddd"
};
var _ContactOption= new ContactLstModel{
ContactType= new List<SelectListItem>(){
new SelectListItem{
Text="sss",Value="ddd"
}
}
};
Run Code Online (Sandbox Code Playgroud)
你可以看到两者都是同一型号ContactLstModel
.现在我如何将两者合二为一?
就像在jQuery中一样,我们有 $.extend(dest,source);
C#中有等价物吗?
我有以下布局:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.example.mkallingal.freakingnav.CardsListFragment">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/darktext"
android:layout_marginBottom="6dp"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Cards Listing" />
<android.support.v7.widget.RecyclerView android:layout_height="match_parent" android:layout_width="match_parent" android:id="@+id/rvCardsList"
android:scrollbars="vertical" tools:listitem="@layout/recycler_item_layout">
</android.support.v7.widget.RecyclerView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
问题是 TextView 总是粘在顶部,而 RecyclerView 占用屏幕上的剩余空间。我可以水平滚动 recyclerview,但 TextView 只是停留在那里。我如何解决这个问题?
struct ParentView: View {
@ObservedObject var selectedFruit:Fruit
@State var showingSheet = false
var body: some View {
VStack {
HStack(spacing:0.6) {
ForEach(self.viewModel.fruits, id: \.id) { record in
Text(record).onTapGesture {
self.selectedFruit = Fruit() //Cannot assign to property: 'self' is immutable
self.showingSheet.toggle()
}
}
}
}.sheet(isPresented: $showingSheet,onDismiss: {
print("reload?")
}) {
DetailView(fruit: self.selectedFruit)
}
}
}
struct DetailView: View {
@ObservedObject var fruit: Fruit
var body: some View {
Text(fruit.text)
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试为可观察值赋值时selectedFruit
,ParentView
出现以下编译错误:
无法分配给属性:“self”是不可变的
但如果我替换@ObservedObject
为@State …
android ×3
asp.net ×2
javascript ×2
.net ×1
angular ×1
asp.net-mvc ×1
bottom-sheet ×1
c# ×1
ember.js ×1
imageview ×1
ios ×1
java ×1
join ×1
jquery ×1
laravel ×1
mysql ×1
php ×1
router ×1
sql ×1
sql-server ×1
swift ×1
swiftui ×1
typescript ×1