小编RaV*_*RaV的帖子

这可以在 bookshelf.js 中使用迁移吗?

我正在尝试将迁移与 knex 和书架一起使用,到目前为止,这就是我的代码,它是书架文档中的一个示例:

exports.up = function(knex, Promise) {
  return knex.schema.createTable('books', function(table) {
    table.increments('id').primary();
    table.string('name');
  }).createTable('summaries', function(table) {
    table.increments('id').primary();
    table.string('details');
    table.integer('book_id').unique().references('books.id');
  });
};
Run Code Online (Sandbox Code Playgroud)

我试过运行:

knex migrate:make my_migration_name
knex migrate:latest
knex migrate:rollback
Run Code Online (Sandbox Code Playgroud)

但我的数据库没有任何变化。任何想法如何让它工作?

javascript node.js express bookshelf.js knex.js

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

Laravel中用于Visual Studio Code或其他IDE的模型的Intellisense(自动完成)

我正在寻找与Laravel .NET中的Intellisense类似的东西。到目前为止,我一直在使用.NET,并且模型的自动补全功能非常出色,并使我的工作更加轻松。

现在我需要创建Laravel应用程序,我一直在遵循本教程来准备我的环境,但是我获得的唯一自动完成功能是默认的PHP函数和一些预定义的方法(例如- SaveSessionListenerSymfony\Component\HttpKernel\EventListener-我什至没有在任何地方使用Symfony)。

我想要实现的是从模型获得自动补全功能,例如Laravel中有一个名为Model的类,我有扩展Model的Page类。

use App/Page

$home = new Page();
$home->content = "lorem ipsum";
$home->save();
Run Code Online (Sandbox Code Playgroud)

当我编写$home->,no content,no save(),只有一些随机函数时,我没有任何完成。我能理解为什么不存在content自动补全功能-它没有直接写成代码,但是它写在数据库和对象数据库引擎上却在解析那个,我还不知道怎么做,但是我不明白为什么甚至save()没有不会自动补全。

我试图用谷歌搜索这个问题,但是没有任何好的结果。

ide intellisense autocomplete laravel visual-studio-code

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

如何检查是否在 Async C# MVC Core 方法中添加了实体项

我正在编写自己的 IUserStore 和 IUserPasswordStore 实现,我需要准备CreateAsync将返回IdentityResult. 到目前为止,我有这个:

    public async Task<IdentityResult> CreateAsync(User user)
    {
        Users.Add(user);
        //await Users.AddAsync(user);
        SaveChanges();
        //await SaveChangesAsync(user);
        //alternative version is commented

        if (<What to put there>)
        {
            return IdentityResult.Success;
        }
        return IdentityResult.Failed(new IdentityError { Description = $"Could not insert user {user.Email}." });
    }
Run Code Online (Sandbox Code Playgroud)

我真的不知道我应该在里面放什么if。我只能使用异步方法,所以当我运行这个函数时没有任何结果。有小费吗?我真的很感激。

通常我只是使用,Any()但这个实现不允许我。如果您需要更多代码,请在评论中提问,我会提供,但我认为这是足够的问题信息。

asynchronous async-await asp.net-identity entity-framework-core asp.net-core

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

.NET MVC Core 2.2 - 无法访问用户相关实体(外键)

我正在写MVC Core 2中的第一个自己的应用程序,我无法访问具有用户外键的Estate Entity.我检查了我的数据库,遗产记录正确存储userId:

当我试图context.Estates.FirstOrDefault(m => m.Id == id);获得一个房地产实体时,但是User == null:

当我尝试通过以下方式访问它时:

var user = await _userManager.GetUserAsync(User);
var estate = user.Estates.FirstOrDefault(m => m.Id == id);
Run Code Online (Sandbox Code Playgroud)

我在Estates列表中得到null异常.同样试图以这种方式保存它给了我一个例外:

var user = await _userManager.GetUserAsync(User);
user.Estates.Add(estate);
Run Code Online (Sandbox Code Playgroud)

但是,当我这样输入时,它会在db中正确保存数据:

var user = await _userManager.GetUserAsync(User);
estate.User = user;
context.Add(estate);
Run Code Online (Sandbox Code Playgroud)

我不知道我在这里做错了什么.我在下面提供了我的代码,希望你能给我一些提示/建议.

这就是我如何基于IdentityDbContext构建上下文:

public class ReaContext : IdentityDbContext<User>
{
    public DbSet<Estate> Estates { get; set; }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        base.OnModelCreating(modelBuilder);
    }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseNpgsql("Server=localhost;Port=5432;Database=rea-dev;User Id=postgres;Password=admin;");
    }

    public ReaContext(DbContextOptions<ReaContext> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-identity entity-framework-core .net-core asp.net-core

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