标签: crud

是否应该有读取查询的事务?

我一直在读一些devs/dbas建议在所有数据库调用中使用事务,甚至是只读调用.虽然我理解在事务中插入/更新在事务中读取的好处是什么?

sql-server transactions crud

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

用例图中的CRUD?

我的问题很简单.将CRUD引入用例图的最佳方法是什么?它应该是干的.我知道,UML有时是自由裁量的,但你怎么看?

一些想法:

1个用例图

usecase1

  • 如果有几个CRUD对象,那不是真的干.

2用例图

usecase2

  • 如果有几个CRUD对象,那不是真的干.

3用例图

usecase3

  • 我更喜欢这个.

更新

4用例图(@Uffe)

在此输入图像描述

  • 注意可能是不必要的,当它在文档中描述时?

5用例图(@home @Uffe)

在此输入图像描述

architecture uml crud

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

为数据库应用程序留下审计跟踪/更改历史记录的有效策略?

人们在相当复杂的数据库中维护数据更改历史记录的成功策略是什么?我经常使用和开发的应用程序之一可以真正受益于更全面的跟踪记录随时间变化的方式.例如,现在记录可以具有多个时间戳和修改的用户字段,但是我们目前没有用于记录多个更改的方案,例如,如果回滚操作.在完美的世界中,可以在每次保存之后重建记录,等等.

关于DB的一些信息:

  • 需要有能力每周增加数千条记录
  • 50-60表
  • 主修订表可能每个都有数百万条记录
  • 合理数量的外键和索引设置
  • 使用PostgreSQL 8.x

database postgresql database-design crud audit-trail

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

Android SQLite和数据库方案上的ORM

我正在寻找一个非常简单的ORM框架,用于Android上的SQLite.我一直在测试ActiveAndroid,但是没有一个例子能够在Eclipse上构建.
那么,人们如何在SQLite for Android中实现"多对多"关系?您如何反映有关删除行并保证数据库完整性的级联?

sqlite orm android many-to-many crud

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

RESTful原子更新多个资源?

想象一下,一个web应用程序存储一些数据资源,其中一些id存储每个数据的三个附件(例如pdf).

URL方案是

data/{id}/attachment1
data/{id}/attachment2
data/{id}/attachment3
Run Code Online (Sandbox Code Playgroud)

存在用于在服务器端实现CRUD操作的GET/PUT/DELETE操作的附件的RESTful API.

让id为123,我想执行一个操作

  • attachment1被新附件替换(例如GET file/123/attachment1返回新附件)
  • attachment2被删除(这样GET file/123/attachment2返回404)
  • attachment3保持不变.

更新应该是原子 -由服务器或什么都没有进行完整的更新.

运用简单PUT file/123/attachment1DELETE file/123/attachment2不是原子,因为客户可以在PUT之后崩溃,并且服务器有没有暗示他应该在这种情况下,做了回退.

那么如何以RESTful方式实现操作呢?

我想过两个解决方案,但它们似乎都不是100%RESTful:

  • 使用PATCH(可能是PUT,但PATCH更好地反映了部分更新的语义)和数据/ 123上的multipart/form-data:multipart/form-data是一个由新的"application/pdf"组成的实体序列使用字段"attachment1"和表示删除attachment2的空值的东西.

虽然这确保了原子性,但我怀疑这是RESTful,因为我使用不同的参数列表重载PATCH方法,这违反了统一接口约束.

  • 使用表示事务的资源.我可以将数据id 123发布到事务URL,该事务URL将创建表示存储在服务器上的数据资源的当前状态的副本的事务资源,例如事务/数据/ 123.现在,我可以在此临时资源(例如DELETE transaction/data/123/attachment2)的附件上调用PUT和DELETE,并通过事务/ data/123上的PUT将此版本资源的提交传达给服务器.这确保了原子性,同时必须实现额外的服务器端逻辑来处理更改相同资源的多个客户端以及从未提交的崩溃客户端.

虽然这似乎与REST一致,但似乎违反了无国籍的约束.事务资源的状态不是服务状态而是应用程序状态,因为每个事务资源都与单个客户端相关联.

我有点被困在这里,所以任何想法都会有所帮助,谢谢!

rest transactions multipartform-data crud atomic

24
推荐指数
2
解决办法
9586
查看次数

在AngularJS中组合CREATE和EDIT控制器是一种好习惯吗?

CREATE和EDIT控制器中有许多重复的代码.这些控制器可以组合成一个,以最大限度地减少重复代码.

问题:我需要区分在表单提交上使用哪种方法 - 例如create()或edit().

解决方案:我可以添加$scope.mode例如并设置$scope.mode='edit'用户是否单击"编辑"按钮或设置$scope.mode='add'用户是否单击"添加"按钮.

我可以使用服务来最小化重复代码,但仍然会有重复的代码.例如,在两个控制器中,我有cancel()方法,它清除表单并隐藏它.我可以在服务中存储clearForm()和hideForm(),但是这些代码将在两个控制器中重复:

$scope.cancel = function() {
    Service.clearForm();
    Service.hideForm();
};
Run Code Online (Sandbox Code Playgroud)

问题:

  • 在AngularJS中组合CREATE和EDIT控制器是一种好习惯吗?
  • 有没有什么好的做法可以减少重复代码?

controller crud angularjs

22
推荐指数
2
解决办法
8557
查看次数

Rails替代Django管理面板/ CRUD View Generator?

我目前正在尝试在Rails和Django之间做出决定..

目前,我发现红宝石更优雅,所以我考虑Django的唯一理由是管理面板..

我没有任何经验,但我必须快速开发一个应用程序以满足截止日期.

在rails中是否有一种方法可以根据您的模型(例如django中的管理面板)为所有CRUD操作生成一个(接近生产就绪)视图集?(即,它会查看您的模型并看到您有一个属于某个组的人,并在创建人视图上为该组生成一个下拉列表)?

如果不是最快的方式(没有手动编写)获得所有CRUD视图的初稿?

谢谢,

丹尼尔

ruby django ruby-on-rails crud django-admin

21
推荐指数
4
解决办法
9979
查看次数

AngularJS最佳实践REST/CRUD

使用AngularJS通过REST进行CRUD操作的最佳实践是什么?

特别是这里的Angular-Way是什么.通过这个我的意思是使用最少的代码最默认的角度设置来实现这一点.

我知道$ resource和它的默认操作.我不确定如何实现/命名端点和使用哪些控制器.

对于此示例,我想实现一个简单的用户管理系统,用于创建/更新/删除/列出用户.由于我自己实现了Server-Endpoints,因此我可以完全自由地以最友好的角度进行操作.

我喜欢的答案是这样的:

服务器端点:

GET /service/users -> array of users
GET /service/user/new -> return an empty user with default values which has no id
POST /service/user/new -> store a new user and create an id. return the saved user.
POST /service/user/:ID -> save an existing user. Return the saved user
DELETE /service/user/:ID -> delete an existing user
Run Code Online (Sandbox Code Playgroud)

角服务:

.factory( 'User', [ '$resource', function( $resource ){

    return $resource( '/service/user/:userId', { userId: '@id' …
Run Code Online (Sandbox Code Playgroud)

rest crud angularjs

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

在Laravel中同步一对多关系

如果我有多对多的关系,那么用它的sync方法更新关系是非常容易的.

但是我会用什么来同步一对多的关系呢?

  • posts:id, name
  • links:id, name, post_id

在这里,每个Post可以有多个Links.

我想将与数据库中特定帖子相关联的链接与输入的链接集合(例如,从我可以添加,删除和修改链接的CRUD表单)同步.

应删除数据库中不存在于我的输入集合中的链接.应更新数据库和输入中存在的链接以反映输入,并且仅在我的输入中存在的链接应作为新记录添加到数据库中.

总结所需的行为:

  • inputArray = true/db = false --- CREATE
  • inputArray = false/db = true --- DELETE
  • inputArray = true/db = true ----更新

php crud one-to-many laravel eloquent

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

Angular - Material Table,是否可以在没有整个表刷新的情况下更新行?

经过几周的谷歌搜索和迄今为止只有一个Stackoverflown问题,我终于设法使用Material Table Component构建了我的Angular CRUD应用程序.它显示来自后端(JSON)的数据和CRUD操作我使用的对话框如图所示(这是编辑,对克罗地亚人抱歉).对话可能不是最好的方法,内联编辑可能会更好.但是,为了添加新项目,你需要像对话这样的东西.

在此输入图像描述

我最后一件事就是如何相应地更新表中的字段.因此,当您在对话框中按"保存"时,数据会在后端(在MySQL表中)更新,但不会在前端更新.目前我有一个丑陋的解决方法,每次当你做更新时,它也刷新整个表.

无论如何这里的代码:

表组件:

export class BazaComponent implements OnInit {
  ....
  constructor(public httpClient: HttpClient, public dialog: MatDialog) {
  }

  ngOnInit() {
    this.loadData();
  }

  // TODO: Simplfy this...
  addNew(ident: number, naziv: string, mt: number, kutija: number,
         komada: number, jm: string, orginal: number, lokacija: number, napomena: string) {
    console.log('add new clicked');
    const dialogRef = this.dialog.open(AddDialogComponent, {
      data: {ident: ident, naziv: naziv, mt: mt, kutija: kutija,
        komada: komada, jm: jm, orginal: orginal, lokacija: lokacija, napomena: napomena …
Run Code Online (Sandbox Code Playgroud)

crud angular-material2 angular

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