小编uhe*_*xos的帖子

除非命名路线,否则Laravel无法找到路线

我正在尝试仅使用内置的Laravel功能实现基本身份验证系统.系统可以正常工作,但前提是我为/ admin/login路由指定名称[即...-> name('admin.login)].如果我把它拿出来,我得到的例外情况如下.

ErrorException(E_ERROR)Route [login.admin]未定义.(查看:/var/www/html/shop/resources/views/auth/login.blade.php)

在过去,我能够访问未命名的路线,我可以访问其他未命名的路线/login/admin.我希望有人能告诉我为什么我会收到错误.

路线

Auth::routes();

Route::get('/login/admin', 'Auth\LoginController@showAdminLoginForm')->name('login.admin');
Route::get('/login/staff', 'Auth\LoginController@showStaffLoginForm');
Route::get('/register/admin', 'Auth\RegisterController@showAdminRegisterForm');
Route::get('/register/staff', 'Auth\RegisterController@showStaffRegisterForm');
Run Code Online (Sandbox Code Playgroud)

$ url可以有2个值admin或staff.

登录刀片页面

@isset($url)
   <form method="POST" action="{{ route('login.'.$url) }}">
@else
   <form method="POST" action="{{ route('login') }}">
@endisset
Run Code Online (Sandbox Code Playgroud)

该命令routes:list还显示路由存在,只是未命名.

    |        | GET|HEAD  | login/admin              |                  | App\Http\Controllers\Auth\LoginController@showAdminLoginForm           | web,guest,guest:admin,guest:staff |
    |        | POST      | login/admin              |                  | App\Http\Controllers\Auth\LoginController@adminLogin                   | web,guest,guest:admin,guest:staff |
    |        | GET|HEAD  | login/writer             |                  | App\Http\Controllers\Auth\LoginController@showWriterLoginForm          | web,guest,guest:admin,guest:staff |
    |        | POST      | login/writer             |                  | App\Http\Controllers\Auth\LoginController@writerLogin                  | web,guest,guest:admin,guest:staff …
Run Code Online (Sandbox Code Playgroud)

php routes laravel laravel-routing laravel-5.7

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

如何在 Python 3 中以字符串格式设置空格

如何设置字符串格式,以便我可以使用变量来确保长度可以根据需要更改?例如,假设最初长度为 10,然后输入更改,然后长度变为 15。我将如何更新格式字符串?

    length =  0
    for i in self.rows:
        for j in i:
            if len(j) > length:
                length  = len(j)
    print('% length s')
Run Code Online (Sandbox Code Playgroud)

显然上面的语法是错误的,但我不知道如何让它工作。

python variables string-formatting python-3.5

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

如何使用 django Rest 框架检索用户创建的所有项目

我试图只获取属于特定用户的课程,下面我有模型、序列化器和视图,我正在使用它来尝试实现这一目标。如果我从视图中删除整个 get_queryset 函数,API 将返回相应的用户以及每个用户创建的每个课程。如果 get_queryset 保留,则 api 始终返回未找到的用户,并且仍然提供所有存在的课程。谁能指出我如何才能达到我想要的结果。

看法:

class UserDetail(generics.RetrieveUpdateDestroyAPIView):
    permission_classes = [IsProfileOwnerOrReadOnly]
    # queryset = User.objects.all()
    serializer_class = UserSerializer

    def get_queryset(self):
        user = self.request.user
        queryset = User.objects.all()
        if user is not None:
            queryset = queryset.filter(courses__owner_id=user.id)
        return queryset
Run Code Online (Sandbox Code Playgroud)

串行器

class UserSerializer(serializers.ModelSerializer):
    courses = serializers.PrimaryKeyRelatedField(
        many=True, queryset=Course.objects.all())
    class Meta:
        model = User
        fields = ['id', 'username', 'courses']
Run Code Online (Sandbox Code Playgroud)

模型

class Course (models.Model):
    title = models.CharField(max_length=200)
    description = models.TextField()
    pub_date = models.DateField(default=date.today)
    owner = models.ForeignKey('auth.User', related_name='courses', on_delete=models.CASCADE)
    def __str__(self):
        return self.title
Run Code Online (Sandbox Code Playgroud)

django django-rest-framework

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

是否可以在python函数中使用print语句而不是返回

让我们说我有这个功能:

def function(a)
    c = a+b
    print(c)
Run Code Online (Sandbox Code Playgroud)

是否建议在函数中使用print语句来显示输出,而不是在结尾处放置一个return语句并使用print(function(a))

如果我在函数中同时使用print语句和return语句来显示相同​​的输出,那会有什么影响呢?让我们想象一下,我需要显示答案c,然后使用c其他地方的值.这会破坏任何编码约定吗?

所以问题的重点不在于print和之间的区别return,而是在同一个函数中使用它们以及它是否对程序产生可能的影响时,它被认为是一种好的风格.例如:

 def function(a)
    c = a+b
    print(c)
    return c
 value = function
 print(value)
Run Code Online (Sandbox Code Playgroud)

结果会是两个c人吗?假设c = 5; 因此,输出是否为(?):

5
5
Run Code Online (Sandbox Code Playgroud)

python printing return function python-3.x

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