将动作形成两个不同路线组中的类似路线

时间:2016-06-20 06:34:15

标签: php laravel

我正在研究基于Laravel设计的LMS系统

在这个系统中,我们有一个课程,一个课程和一个测试模型。每门课程可以有一些课程,只有一个最终测试,而每节课可以有一个测试。

为课程或课程创建测试我只有一个页面包含一个表单。创建它我使用了这些:

- (void) handleOneTap:(UITapGestureRecognizer*)paramSender{
// *** Never gets called
NSUInteger touchCounter = 0; for (touchCounter = 0;
                                  touchCounter < paramSender.numberOfTouchesRequired;
                                  touchCounter++){
    CGPoint touchPoint = [paramSender locationOfTouch:touchCounter
                                               inView:paramSender.view];
    NSLog(@"Touch #%lu: %@",
          (unsigned long)touchCounter+1, NSStringFromCGPoint(touchPoint));
  }
}

- (void)viewDidLoad {
[super viewDidLoad];

_container = [[UIView alloc] initWithFrame:CGRectMake(20, 50, 280, 300)];
[self.view addSubview:_container];

_container.backgroundColor = [UIColor redColor];
_container.opaque = YES;

// setup tap recognizer
self.tapGestureRecognizer = [[UITapGestureRecognizer alloc]
                             initWithTarget:self
                             action:@selector(handleOneTap:)];
self.tapGestureRecognizer.numberOfTouchesRequired = 1;
self.tapGestureRecognizer.numberOfTapsRequired = 1;
self.view.userInteractionEnabled = YES;
self.container.userInteractionEnabled = YES;
[self.view addGestureRecognizer:self.tapGestureRecognizer];
}

路线是这些:

{!! Form::open(array('action' =>['TestController@store',$course_id,$lesson_id],  'id'=>'createTestForm')) !!}

如您所见,在课程路线组和课程路线组内重复测试模型的路线。

现在,当我想创建一个测试对于一个课程,所有事情都有效,创建的表单的动作属性是这样的:

Route::group(['prefix' => 'course'], function () {
        Route::group(['prefix' => '/{course_id}'], function () {


            //To Create Final Test of a Course
            Route::resource('test', 'TestController');
            //To Create Final Test of a Course


            Route::group(['prefix' => 'lesson'], function () {

                Route::group(['prefix' => '/{lesson_id}'], function () {


                    //To Create Test of a Lesson
                    Route::resource('test', 'TestController');
                    //To Create Test of a Lesson

                });

            });

            Route::resource('lesson', 'LessonController');
        });

    });
    Route::resource('course', 'CourseController');

但是在为课程创建测试表单时,表单的操作如下:

http://lms.dev/course/2/lesson/8/test

虽然必须是这样的事情:

http://lms.dev/course/2/lesson//test

我不想为此创建两个不同的页面视图,因为课程和课程的测试选项完全相似。

我不知道该怎么做?

0 个答案:

没有答案