正如我的问题标题所述,我想知道遵循在数据库中插入数据的“Laravel方式”的所有最佳实践和优点/缺点。
使用import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
x = np.linspace(0,6.19, 100)
y = np.sin(x)
ax = plt.gca()
p1 = ax.plot(x,y, label="test")
# list of text objects
text = [mpl.text.Text(0,0,'$a=$'), mpl.text.Text(0,0,'$2$')]
# HPacker of text objects
# right way to get them into the legend?
hp = mpl.offsetbox.HPacker(children=text)
lgd = plt.legend([p1,??], ['legend1',??])
plt.show()
在数据库中插入与该控制器模型相关的新行是不好的做法?
在模型中创建一个单独的函数本身是一个更好的做法吗?
如果是这样,为什么?
答案 0 :(得分:1)
这取决于项目的大小,您可以直接在控制器中使用模型,并使用Eloquent的流畅界面来完成您的逻辑。
在控制器中调用模型从数据库中获取数据没有任何错误。
如果有一些复杂的查询,您可以在模型中创建方法,然后在控制器中调用该方法...
答案 1 :(得分:0)
在laravel中,您可以在控制器,视图(刀片)或甚至路径中使用插入。 但建议在您的控制器上。这有助于使您的代码清洁
答案 2 :(得分:0)
您可以查看resource controller。它已经预定义了E/cv::error(): OpenCV(3.4.1) Error: Assertion failed (src.dims == 2 && info.height == (uint32_t)src.rows && info.width == (uint32_t)src.cols) in void Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv*, jclass, jlong, jobject, jboolean), file /build/master_pack-android/opencv/modules/java/generator/src/cpp/utils.cpp, line 101
E/org.opencv.android.Utils: nMatToBitmap caught cv::Exception: OpenCV(3.4.1) /build/master_pack-android/opencv/modules/java/generator/src/cpp/utils.cpp:101: error: (-215) src.dims == 2 && info.height == (uint32_t)src.rows && info.width == (uint32_t)src.cols in function void Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv*, jclass, jlong, jobject, jboolean)
E/CameraBridge: Mat type: Mat [ 1920*1080*CV_8UC4, isCont=true, isSubmat=false, nativeObj=0x73dfae9ca0, dataAddr=0x73daa00000 ]
Bitmap type: 1920*1080
Utils.matToBitmap() throws an exception: OpenCV(3.4.1) /build/master_pack-android/opencv/modules/java/generator/src/cpp/utils.cpp:101: error: (-215) src.dims == 2 && info.height == (uint32_t)src.rows && info.width == (uint32_t)src.cols in function void Java_org_opencv_android_Utils_nMatToBitmap2(JNIEnv*, jclass, jlong, jobject, jboolean)
A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x28 in tid 21283 (Binder:21268_1), pid 21268 (foo.bar)
Application terminated.
方法之类的逻辑,您可以在其中放置一些store()
,如您所说。
如果您还在模型中创建方法并从控制器中调用它,那也不错。
我认为,Model::create()
方法可以直接从请求中存储一些数据(从前端的某种形式,例如)就足够了。但是,如果您希望/需要制作的不仅仅是直接存储模型,则可能会在模型内部使用单独的方法。除了避免控制器的方法过度生长并保持代码漂亮。
答案真的取决于,所以也许你会对你想要实现的逻辑有所了解。